星期一, 十二月 19, 2011
星期日, 十二月 18, 2011
如何查看一个Hyperion Essbase技术论坛
Essbase discussion board是一个专注于Hyperion Essbase的技术论坛,其中有很多业界大牛答疑解惑,实为不可多得的学习资源。但是,在天朝你却无法直接访问这个纯技术的论坛。所以,需要经过代理网站才能顺利浏览网站内容:
论坛话题涵盖了Hyperion多种EPM产品(比如Essbase、Planning、Web Analysis),内容非常丰富。我们可以通过RSS订阅论坛更新,以随时关注最新话题。
首先,在RSS阅读器(如Googel Reader)中,订阅论坛的RSS Feed:
然后,右键点击话题条目并复制链接:
最后,将链接粘贴到代理网站的地址栏中,并打开网页:
星期一, 十二月 12, 2011
星期日, 十二月 11, 2011
星期六, 十二月 10, 2011
折线图 (Line Chart)
折线图(Line Chart),适合于在时间序列上,反映数据的变动情况及发展趋势。(Show a pattern or progression over a continuous range or period.)
2011年F1收官战巴西大奖赛排位赛中,维特尔在锁定本赛季第15个杆位的同时,也打破了曼塞尔保持的单赛季杆位纪录。图表的纵轴表示领先第二名车手的成绩,突显了维特尔的明显优势。此图表也打破了拆线图中横轴表示时间,纵轴表示比例的常规用法。
星期六, 十一月 26, 2011
VIM学习笔记 备份文件(Backup)
Vim利用writebackup和backup两个选项,在编辑文件的过程中,自动生成备份文件,以防止异常情况下的数据丢失。
启用文件备份
在默认情况下,Vim已经设置了writebackup选项。我们可以使用以下命令,启用backup选项。vim将首先删除旧的备份文件,然后再为正在编辑的文件生成新的备份文件:
:set backup
备份文件名称
默认情况下,备份文件的名称是在原始文件名最后加上“~”后缀。例如,正在编辑一个名为“data.txt”的文件,那么Vim将产生名为“data.txt~”的备份文件。我们也可以使用以下命令,来自定义备份文件扩展名,新的备份文件名将命名为“data.txt.bu”。
:set backupext=.bu
备份文件位置
默认情况下,备份文件将存储于原文件相同的目录下。使用以下命令,可以设置备份文件存放到指定位置:
:set backupdir=C:/Temp
需要注意的是,如果在不同目录下编辑相同名称的文件,在保存退出时,Vim会将备份文件放置到同一指定的目录中,名字冲突会使已存在的备份文件被覆盖。
备份文件过滤
如果你并不需要对所有文件都进行备份,那么可以利用以下命令取消对指定目录下文件的备份:
set backupskip=D:/Temp/*
需要注意的是,Windows文件路径中斜线(/)的用法。
禁止文件备份
在保持默认writebackup选项的情况下,我们可以使用以下命令,取消备份文件的生成:
:set nobackup
需要注意的是,如果同时设置了nobackup和nowritebackup选项,那么在磁盘已满而更新文件时会造成数据的丢失,所以我们最好不要改变默认的writebackup选项。
:set backup | 启用文件备份 |
:set nobackup | 禁止备份文件 |
:set backupext | 设置备份文件扩展名 |
:set backupdir | 设置备份文件存储位置 |
:set backupskip | 过滤不需备份的文件 |
星期六, 十一月 19, 2011
星期五, 十一月 18, 2011
VIM学习笔记 多重色彩括号(Rainbow Parentheses)
在编写代码时,经常需要函数嵌套,这就会造成一行代码中会有很多括号,而变得难以阅读。我们可以使用Rainbow Parenthesis插件或者Rainbow Parentheses Improved插件,通过多种颜色来标识匹配的括号。
安装Rainbow Parentheses
首先下载Rainbow Parenthesis;然后在vim中打开下载的vba文件;最后执行:so %
命令以完成安装。
配置Rainbow Parentheses
打开vimfiles\autoload\rainbow_parenthesis.vim文件,在第66行插入以下命令,以避免Rainbow Parentheses插件运行时报错。
将该文件第34-49行中的guibg部分删除,以避免Rainbow Parentheses插件改变括号的背景色。
启用Rainbow Parentheses
我们可以使用以下命令,手工启动Rainbow Parentheses插件:
:ToggleRaibowParenthesis
显示效果如下图所示:
也可以在vimrc文件里添加以下命令,在vim启动时自动加载Rainbow Parentheses插件:
安装Rainbow Parentheses Improved
Rainbow Parentheses Improved在以下几个方面进行了改进:不再限制括号的嵌套层数;可以分别自定义图形界面下和终端上所使用的括号颜色;甚至可以为不同类型的文件设定不同的配置;增加了中文说明。
首先,将下载到的rainbow.vim文件放到vimfiles/plugin文件夹(在linux系统里是~/.vim/plugin文件夹)中。然后,将以下句子,加入到你的vimrc配置文件中:
let g:rainbow_active = 1
启用Rainbow Parentheses Improved
我们可以使用以下命令,手工启动Rainbow Parentheses Improved插件:
:RainbowToggle
显示效果如下图所示:
星期六, 十一月 12, 2011
VIM学习笔记 非可见字符(Listchars)
显示/隐藏
默认情况下,Vim是不会显示space,tabs,newlines,trailing space,wrapped lines等不可见字符的。我们可以使用以下命令打开list选项,来显示非可见字符:
:set list
如下图所示,制表符被显示为“^I”,而行尾则标识为“$”。
我们也可以使用以下命令,重新隐藏不可见字符:
:set nolist
通常我们会利用以下命令,切换显示或隐藏不可见字符:
:set list!
显示符号
使用:set listchars
命令,可以配置使用何种符号来显示不可见字符。例如以下命令,将制表符(tab)显示为…;将尾部空格(trail)显示为·;将左则超出屏幕范围部分(precedes)标识为«;将右侧超出屏幕范围部分(extends)标识为»。
其中,特殊符号是在插入状态下,点击快捷键Ctrl-k,然后键入编码来输入的。比如,中点是由.M输入;左书名号是由<<输入,右书名号是由>>输入。
可以使用以下命令,查看可以输入的特殊字符:
:digraphs
如下图所示,通过选择合适的符号和色彩,非可见符号被低调地显示出来––即没有影响实际的文本内容,又能展示容易被忽视的重要信息:
显示颜色
非可见字符"eol"、"extends"、"precedes"是由NonText高亮组来控制显示颜色的,而"nbsp"、"tab"、"trail"则是由"SpecialKey"高亮组来定义的。
我们可以使用以下语法高亮 (Syntax Highlight)命令,来设置非可见字符的显示颜色和格式:
请使用以下命令,查看关于非可见字符的帮助信息:
:help listchars
:set list | 显示非可见字符 |
:set nolist | 隐藏非可见字符 |
:set listchars | 设置非可见字符的显示模式 |
星期二, 十月 25, 2011
星期六, 十月 08, 2011
VIM学习笔记 替换(Substitute)
利用:substitute
命令,可以将指定的字符替换成其他字符。通常,我们会使用命令的缩写形式:s
,格式如下:
:[range] s/search/replace/[flags] [count]
其中,range是指定范围,也就是在哪些行里做替换。而后是将字符串from替换成字符串to。
替换标记
在默认情况下,替换命令仅将本行中第一个出现的的字符替换成给定字符。如果我们想要将所有出现的字符都替换成给定字符,可以在命令中使用g(global)标记:
:%s/from/to/g
其他的标记(flags)包括:p(print),是要求打印所做的改动;c(confirm),是要求在做出改动以前先询问;i(ignorecase),是不区分大小写。我们可以组合使用标记,比如以下命令,将会显示将要做改动的文本并要求确认:
:1,$ s/Professor/Teacher/gc
replace with Teacher (y/n/a/q/l/^E/^Y)?
这时你可以做出以下回答:
- y Yes:执行这个替换
- n No:取消这个替换
- a All:执行所有替换而不要再询问
- q Quit:退出而不做任何改动
- l Last:替换完当前匹配点后退出
- CTRL-E 向上翻滚一行
- CTRL-Y 向下翻滚一行
指定范围
如果没有在命令中指定范围,那么将只会在当前行进行替换操作。以下命令将把当前行中的I替换为We。命令中的/i标记,用于指定区分大小写。
:s/I/We/gi
以下命令将文中所有的字符串idiots替换成managers:
:1,$s/idiots/manages/g
通常我们会在命令中使用%指代整个文件做为替换范围:
:%s/search/replace/g
以下命令指定只在第5至第15行间进行替换:
:5,15s/dog/cat/g
以下命令指定只在当前行在内的以下4行内进行替换:
:s/helo/hello/g4
以下命令指定只在当前行至文件结尾间进行替换:
:.,$s/dog/cat/g
以下命令指定只在后续9行内进行替换:
:.,.+8s/dog/cat/g
你还可以将特定字符做为替换范围。比如,将SQL语句从FROM至分号部分中的所有等号(=)替换为不等号(<>):
:/FROM/,/;/s/=/<>/g
在可视化模式下,首先选择替换范围, 然后输入:
进入命令模式,就可以利用s
命令在选中的范围内进行文本替换。
精确替换
在搜索sig时,也将匹配sig, signature, signing等多个单词。如果希望精确替换某个单词,可以使用“\<”来匹配单词的开头,并用“\>”来匹配单词的结尾:
:s/\<term\>/replace/gc
多项替换
如果想要将单词Kang和Kodos都替换为alien,那么可以使用|
进行多项替换。
:%s/Kang\|Kodos/alien/gc
变量替换
使用以下命令可以将文字替换为变量的内容:
:%s!\~!\= expand($HOME)!g
星期五, 十月 07, 2011
关于屏幕截图的一切(四)
Format图片格式
PNG、JPG和GIF是最常用于屏幕截图的三种图片格式。综合考量显示质量和文件大小,他们分别适合于不同的内容。
对于文字内容(比如代码、搜索、文档等),适合于GIF或PNG格式。相对于JPG格式,他们显示更加清晰,文件尺寸也更加精简。
GIF (16kb)
JPG (25kb)
对于软件界面(比如窗口、对话框、桌面等),PNG和JPG格式没有太大差别,PNG格式显示色彩更加饱满文字更加清晰,文件尺寸也更大;而JPG图片尺寸相对较小。
JPG (20kb)
PNG (29kb)
对于图片视频(比如动画、地图、游戏等),适合于JPG格式。达到相似的图片质量,PNG文件尺寸会更加庞大。
JPG (20kb)
PNG (66kb)
Zoom屏幕缩放
屏幕截图时,经常需要放大尺寸,以使读者看清细节。我们可以在按住Control键的同时,用滚轮缩放屏幕。然后利用快捷键或图像捕捉程序抓取放大后的屏幕。
注意:屏幕缩放仅对区域截图有效。如果你选择抓取窗口,将无法获得缩放效果。
星期日, 九月 04, 2011
VIM学习笔记 折叠 (Fold)
当我们查看很长的文本时(比如程序代码),可以使用:set foldenable
命令来启动折叠。首先将内容按照其结构折叠起来,查看文件的大纲,然后再针对特定的部分展开折叠,显示文本的详细内容。
Vim将折叠等同于行来对待——你可以使用j或k命令,移动跳过包含多行的整个折叠;也可以使用y或d命令,复制或删除某个折叠。
通常在折叠处向左或向右移动光标,或者进入插入模式,都将会自动打开折叠。我们也可以使用以下命令定义快捷键,使用空格键关闭当前打开的折叠,或者打开当前关闭的折叠。
:nnoremap <space> za
按照折叠所依据的规则,可以分为Manual(手工折叠)、Indent(缩进折叠)、Marker(标记折叠)和Syntax(语法折叠)等几种。
Manual Fold
使用以下命令,启用手工折叠。
:set foldmethod=manual
在可视化模式下,使用以下命令,将折叠选中的文本:
zf
通过组合使用移动命令,可以折叠指定的行。例如:使用zf70j
命令,将折叠光标之后的70行;使用5zF
命令,将当前行及随后4行折叠起来;使用zf7G
命令,将当前行至全文第7行折叠起来。
我们也可以使用以下命令,折叠括号(比如()、[]、{}、><等)包围的区域:
zfa(
Vim并不会自动记忆手工折叠。但你可以使用以下命令,来保存当前的折叠状态:
:mkview
在下次打开文档时,使用以下命令,来载入记忆的折叠信息:
:loadview
可以使用以下命令,查看关于手工折叠的帮助信息:
:help fold-manual
Indent Fold
使用以下命令,启用缩进折叠。所有文本将按照(选项shiftwidth 定义的)缩进层次自动折叠。
:set foldmethod=indent
使用zm
命令,可以手动折叠缩进;而利用zr
命令,则可以打开折叠的缩进。
使用以下命令,将可以根据指定的级别折叠缩进:
:set foldlevel=1
可以使用以下命令,查看关于缩进折叠的帮助信息:
:help fold-indent
Syntax Fold
使用以下命令,启用语法折叠。所有文本将按照语法结构自动折叠。
:set foldmethod=syntax
可以使用以下命令,查看关于语法折叠的帮助信息:
:help fold-syntax
Marker Fold
使用以下命令,启用标记折叠。所有文本将按照特定标记(默认为{{{和}}})自动折叠。
:set foldmethod=marker
我们可以利用标记折叠,在文本中同时体现结构和内容,并且能够快速跳转到文件的不同部分。
可以使用以下命令,查看关于标记折叠的帮助信息:
:help fold-marker
折叠选项
使用:set foldcolumn=N
命令,将在屏幕左侧显示一个折叠标识列,分别用“-”和“+”而表示打开和关闭的折叠。其中,N是一个0-12的整数,用于指定显示的宽度。
使用以下命令,可以查看关于折叠的帮助信息:
:help folding
za | 打开/关闭当前的折叠 |
zc | 关闭当前打开的折叠 |
zo | 打开当前的折叠 |
zm | 关闭所有折叠 |
zM | 关闭所有折叠及其嵌套的折叠 |
zr | 打开所有折叠 |
zR | 打开所有折叠及其嵌套的折叠 |
zd | 删除当前折叠 |
zE | 删除所有折叠 |
zj | 移动至下一个折叠 |
zk | 移动至上一个折叠 |
zn | 禁用折叠 |
zN | 启用折叠 |
星期六, 八月 13, 2011
关于屏幕截图的一切(三)
Command命令
执行以下命令,然后使用相机图标点击任意窗口,就可以截取选中的窗口并保存图片到指定位置:
screencapture -iW ~/Desktop/screen.jpg
而使用以下命令,则可以截取整个屏幕:
screencapture -S ~/Desktop/screen.jpg
以下命令则可以截取部分屏幕,并将图片放入剪贴板:
screencapture -ic
利用-t选项,可以设置图片格式;而-x选项,则可以关闭截图时发出的声音:
screencapture -iW -ttiff ~/Desktop/screen.tiff
如果你希望在截取屏幕后立刻查看图片,那么可以编写一个简短的AppleScript来自动化这个过程。首先屏幕截图,然后使用Preview程序来显示图片。
运行Applications中Utilities目录下的AppleScriptEditor,并输入以下代码:
将以上脚本保存到~/Library/Scripts目录,并设置为应用程序。
在AppleScriptEditor的“偏好设置”中,选择“在菜单栏中显示脚本菜单”。
从菜单栏里的脚本图标调用程序,就将在屏幕上显示相机图标,你可以用它点击并截取窗口;也可以点击空格键,将显示十字图标,用以截取鼠标拖拽的屏幕区域。
星期一, 八月 08, 2011
在Mac下管理文档
Structure架构
用文件夹组织文档已经广为人们熟悉和接受。在Mac中,可以利用Finder构建文件夹的主体结构。
通过菜单或快捷键(Command+3),设置Finder为分栏显示,就能用直观递进的树状结构来观察文档库的结构。
当我们在Finder中选中图片、音乐、视频或PDF等文档时,可以立刻获得文档的预览;同时还将显示名称、种类、大小和尺寸等相关信息;点击“更多信息”按钮更能获得非常详尽的文档描述。
结构不仅仅在于分类,同时也应该排列顺序和突出重点。
- 尽量使用英文来命名目录。利用英文字母可以自然地形成顺序。比如我可以很快找到“CaseStudy”目录,因为它一定排在前面,应该就在“Book”目录后面。如果很难一眼看到,那么只要选中任一目录,然后按“C”键就会移动到以“C”开头的目录。这些都是中文目录名所不具备的优势,因为你很难判断“案例”目录所处的位置。
- 用下划线开头的目录名突出重点。如果我希望突出某个目录,并将它置于所有目录之上,那么我会以下划线开头来命名目录。比如第一个“_ToDo”目录,就代表我要优先处理的文档。
- 用下划线和数字来排序目录。如果有一系列目录需要排序,我会采用下划线和数字开头的方式来命名它们。比如用“_1_Integration”,“_2_Scope”......来依次列出项目管理的9大知识领域。这样的结果是,目录将以适当的顺序排列在一起,并且分段的文件名也更容易识别。
Navigate导航
我们经常需要在文档库中,依据分类路径(也就是文件系统的目录结构)来浏览文件。在Finder工具栏上点击鼠标右键,选择“自定义工具栏...”菜单项,将“路径”按钮拖拽到工具栏上,点击“完成”按钮。 你只需要点击“路径”按钮,就能看到一系列路径,选择其一就能立刻跳转到指定目录。右键点击Finder标题栏上的代理图标(Proxy Icon),也能实现相同功能。
在Finder中,选择“显示”菜单下的“显示路径栏”菜单项,将在窗口底部显示当前所处的完整路径。你可以双击其中的任意一级路径,快速导航到指定的目录。
使用文件夹来组织文档并不足够--主要问题是不够灵活,不能反映文件的多维度属性。比如我有一篇介绍网站开发的文档,它其中包括了Linux、Apache、XHTML、CSS等多方面的知识,如果我把它置于以上任何一个目录,都会有失偏颇。这时我们就发现仅利用文件夹组织文档是过于生硬的,所以必须引入更灵活的机制--标签。
Tags标签
利用标签可以全方位地描述文件,充分体现文档所包含的内容。比如上面提到的介绍网站开发的文档,我将它放在“WebDesing”目录下,然后打上Linux、Apache、XHTML、CSS等多个标签。这样不但完整地描述了文档,也为将来搜索文件提供了方便的标靶。
添加标签
- 在Finder下选中文件;
- 调出Quicksilver;
- 用Command+G键将选中的文件发送至Quicksilver;
- 用Tab键移动到第2个窗格,只要输入字母"A",就会调用File Tagging插件的"Add Tags..."动作;
- 用Tab键移动到第3个窗格,即可标记Tag,多个Tag用空格分隔,按Return键完成操作。
搜索标签
- 调出Quicksilver;
- 在第1个窗格中输入标签;
- 用Tab键移动到第2个窗格,选择"Show Files Matching Tag"动作;
- 按Return键将显示所有匹配此标签的文件。
Quicksilver利用Mac强大的Spotlight搜索能力,分门别类地显示匹配标签的文件。
Status状态
标识状态
利用Mac内置的“颜色标签”功能,可以标识文件的阅读状态。只要在Finder中选中文件,然后用鼠标右键调出弹出菜单,并选择需要的颜色标签。比如就用橙色标示“尚未阅读”的文件;用黄色标示“部分阅读”的文件,这样就可以一眼看出哪些文件需要阅读。
更妙的是,我们不但能选用不同颜色,还能定义这些颜色所代表的含义,这样就可以更方便地标示文件状态。
跟踪状态
利用Mac的智能文件夹(Smart Folders)功能,可以轻松方便地跟踪文件状态。
- 在Finder中,用快捷键Command+F进入查找状态;
- 在“种类”中选择“颜色标签”;
- 选择“橙色标签”;
- 点击“存储”按钮。
今后只要双击已保存的智能文件夹,就能根据你早先设定的查找条件迅速找到匹配文档。查找结果可以自动更新,随时反映你的阅读状态。如果你已经阅读了文档,那么只要取消颜色标签,那么文档就不会再出现在智能文件夹中。
我们还可以将智能文件夹拖放到Finder的侧边栏(Sidebar)中,这样就可以更方便获得查找结果。
Score评分
彼得·德鲁克,让·波德里亚,库尔特·冯内古特......智者纷纷逝去,这也意味着将越来越难读到伟大的思想。所以,只要我看到精彩的文章,就一定要做下记号,以便日后重温。
首先,利用Quicksilver中File Tagging插件的"Add Tags..."动作,为精彩文章打上星级符号。比如用“*****”表示最精典的文章。
随后,利用Quicksilver中File Tagging插件的"Show Files Matching Tag"动作,来查询精彩的文章。
利用智能文件夹,可以更方便地查看精典文章。
- 在Finder中,用快捷键Option+Command+N新建智能文件夹;
- 在“种类”中选择“Spotlight 注释”;
- 在“包含”下拉框后的编辑框中,输入“@*****”(因为Quicksilver对所有标签自动加入了@前缀);
- 点击“存储”按钮。
View查看
这个世界上有许多不可理喻的谬论!比如有人以为用了苹果电脑就意味着是搬去另一个星球--要使用完全不同的软件,放弃长久形成的习惯,连常见的文件类型也无法访问。我可以用自己的亲身体验来击碎这些不实之辞--除了人性化设计带来的惊喜之外,你不会感到任何不自在。其实并不奇怪,这个世界本来就是被谎言所包裹的。掌握话语权的既得利益者,无知,无聊,无耻,所以我们必须自己自觉地分辨好恶。
TXT和RTF文件可以用Mac内置的文本编辑器(TextEdit);PDF和图片可以用Mac内置的预览(Preview);HTML网页可以用Firefox;M$ Office和OpenOffice文件可以用NeoOffice;CHM文件可以用Chmox......总之,你有无数种选择。只要你愿意选择。
我们应该使用通用标准的文件格式(比如TXT、HTML和ODF),只有这样才能最大程度保护我们的投资,只有这样才能营造平等平和的生态环境。请不要在公开场所抽烟,也请不要使用封闭垄断的文档格式。这不是一个技术问题,而是一个文化问题!
Tags: Mac, KM, PKM, Document, Tag, Quicksilver, SmartFolder, ColorTag