WebDev

WinXP SP3 安装IE7的方法

默认的xp sp3安装的ie都是ie6,那么像我们这类搞web前端开发的就郁闷了,还要装ie7再装IEtester。但是系统为精简版的SP3可能会安装IE7失败,摸索很久才找到原因,不过这个方法很久之前就被我发现了,一直没时间打字~下面说下我的解决办法:

访问:Windows update:http://update.microsoft.com/Windowsupdate/v6/default.aspx?ln=en,安装Windows update ActiveX Control,之后它会提示重启系统。
再安装IE7,问题就解决了。

我想原因就是系统精简了Windows update,而安装ie7首先需要这个功能所以导致安装失败。安装好ie7后再关闭Windows update即可。
我用的是SP3英文版,中文版的解决办法也都是大同小异的了。

Tags: ie7

fieldset 在ie 和 firefox 下的不同

最近用php做了一个留言板,用户发布留言的form就用到了fieldset,不过发现了一个问题,就是IE下面fieldset的margin-top和margin-bottom无效,当然margin横向是正常的。

比如css里:fieldset{margin:100px auto;}那么这个fieldset在FF(包括safari等浏览器)显示是上下100px、左右居中。而IE下就是左右居中,margin的上下无效。(当然这里的ie是IE6-IE8、页面带DOCTYPE声明)。

我的解决办法就是修改fieldset内legend的margin,或者fieldset外面加一个div,然后修改这个div的margin。

顺便,这个表单也被我拿来当作练习js了,深刻的体会到:学到的理论如果不用到实践上,那永远也不会有提升。

删除重复内容行

由于要处理一个两万多行的数据,但要删除其中内容重复的行,所以找了几个方法:

1. 用sed替换重复内容,使用命令 -n "G;s/\n/&&/;/^\(.*\n\).*\n\1/d; s/\n//;h;P" "$(FilePath)" (这里是在editplus里的使用,注意$(FilePath)必须是带路径的文件名)。当然sed不需依赖editplus,可以单独使用的。优点:删除重复内容后,顺序结构不变。缺点:不支持UTF-8,处理大文件时(2w多行)就不行了。

2.使用editplus-工具-排序,勾选"删除重复"。可惜不想把内容排序,却被自动排序了。(勾选"区分位置",好像没用?),这个效率相当快~差不多是瞬间完成的,之所以没放弃editplus,确实它的优点有很多。

3.使用一个批处理

@echo off
:: 删除重复的行,但不能保留空行
:: 对不符合变量命名规则、变量个数超过限制的文本都无法正确处理
(echo 清除重复行后的文件内容:& echo.)>str_.txt
for /f "delims=" %%i in (testText.txt) do (
  if not defined %%i set %%i=A & echo %%i>>str_.txt)
:: start str_.txt

当然也不支持utf8,效率也比较慢,处理2w多行用了1分多钟,不过排序没有改变:)。

editplus 正则删除 多行注释

editplus正则不能用于多行,这点比较郁闷。css里面的注释,有些内容都是多行的,而且还可能包含html语句,这样的情况editplus批量删除注释就不能用了。研究了一下,提供下我认为目前比较完美的方法:

editplus删除多行注释:/*......*/的方法:
1、把全文中的“\n”全都替换成“┓”。
2、把“[<|/]/”替换成空。(删除注释里面的“</”、“//”类内容,注释里面带有"/"的话,第三步就查不到了)
3、把“/\*.[^/]*\*/”替换成空。(不加[^/],就会波及到非注释内容)
4、把"┓"再替换成"\n"。

以上替换的时候都要勾上“正则表达式”。虽然步骤比较多,但是总算能实现替换多行了。
 

Tags: 正则 , editplus

editplus SVN 设置

SVN在团队开发的时候很强大。VS有VisualSVN插件,但是我不喜欢用VS。vim电脑上也有,虽然很多人说vim也很强大,不过我目前还是习惯editplus。也许以后会去适应vim吧。

1、首先这里有一篇介绍,edtiplus使用SlikSVN来实现update、commit。当然前提也是要安装TortoiseSVN的。

2、发现了一个更好的介绍,是deitplus wiki里面的介绍的方法。

说明:方法1使用的SlikSVN是命令行端,方法2使用的TortoiseProc.exe是GUI端。

下面我把方法二的实现方法稍微翻译一下:

Subversion Commit

说明:用TortoiseSVN校检文件并提交文件到服务器(当然,前提是你安装了TortoiseSVN)
添加方法:编辑edtiplus 工具-用户工具-添加工具-程序
菜单文本:SVN Commit
命令: C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe
参数: /command:commit /path:"$(FilePath)" /notempfile /closeonend:0
初始目录: $(FileDir) Check: "Capture output", "Save open files"
勾上"保存打开文件"。可以不勾"捕获输出",根据个人喜好吧,我是没勾。

说明:TortoiseSVN 使用临时文件在 shell 扩展和主程序之间传递多个参数,(低于1.5.0版,必须增加/notempfile参数,如果不这样做,该命令将无法正常工作,/path指定的文件将被删除。)从 TortoiseSVN 1.5.0 开始,废弃/notempfile参数,不再需要增加此参数。

Subversion Update, Delete, Rename, Checkout etc

说明:SVN的更新、删除、重命名、校检等命令
方法:只需要把上面的"参数"里的:/command:commit 用下面的替换(例如:/command:about

:about 显示关于对话框
:log 打开日志对话框
:checkout 打开检出对话框
:import 打开导入对话框
:update 将工作副本的/path更新到HEAD,如果给定参数/rev,就会弹出一个对话框询问用户需要更新到哪个修订版本。为了避免指定修订版本号/rev:1234的对话框,需要加上/nonrecursive和/ignoreexternals参数(这2个参数我没加,还没遇到上述问题)
:commit 打开提交对话框
:add 将/path的文件添加到版本控制
:revert 撤消一个文件自上次更新后的所有的变更
:cleanup 递归清理工作拷贝,删除未完成的工作拷贝锁定
:resolve 将/path指定文件的冲突标示为解决,如果加上/noquestion,将不会提示确认操作。
:repocreate 在/path创建一个版本库
:switch 切换至分枝/标记
:export 将/path的工作副本导出到另一个目录
:merge 打开合并对话框
:mergeall 打开合并所有对话框
:copy 复制工作副本至URL
:settings 打开设置对话框
:remove 从版本控制里移除/path中的文件
:rename 重命名/path的文件
:diff 启动TortoiseSVN设置的外置比较程序
:help 打开帮助文件
:relocate 打开重定位对话框
:help 打开帮助文件
:repobrowser 打开版本库浏览器对话框
:ignore 将/path中的对象加入到忽略列表,仅对文件夹有效。
:blame 打开文件的追溯对话框
:createpatch 创建/path下的补丁文件。
:revisiongraph 显示/path目录下的版本变化图。
:lock 锁定一个文件,可以输入锁定的原因。
:rebuildiconcache 重建windows的图标缓存,当系统图标缓存出了问题才需要这样做(会导致桌面的图标会重新排列)
:properties 显示 /path 给出的路径之属性对话框。

更多的命令看:tortoisesvn docs

我只用了update、commit、add、revert、rename、remove、export、lock、unlock、resolve、checkout、blame、merge,后面几个都是不太常用的了。

另外在editplus wiki,还发现了一个不错的东西:打开当前文件的文件夹(使用svn的话,这个功能就很实用了)。方法,在用户工具里添加-程序:
菜单文本:Current Location(当前文件的文件夹)
命令:%systemroot%\explorer.exe /e,/root,\local disk, 参数:$(FileDir)
初始目录:空着
勾上:退出时关闭窗口、保存打开文件

Tags: svn , editplus

Total: 106Page 2 of 22‹ Prev1234567Next ›Last »