关于近期新上手mac碰到的一些小问题,盼望大家能解答下. 每解决一个我会红心奉上.

2012-12-11 20:44:06 +08:00
 join
1.mac是bsd的内核,我以前是经常用的linux那些命令行跟mac的完全不同.而且bsd跟gnu拿那套工具差别也很大,导致我用一些命令行工具的参数总感觉莫名奇妙的.
不知道大家有什么好的方式能无通替换掉mac下ls sed awk 这些工具为gnu的那套?

2.mac默认的vim各种不好用,macvim还不错,但貌似不能在终端下运行,要另外开一个窗口.有什么好的方式删掉mac默认的vim,然后我自己再编译个vim替换掉?

3.关于输入法,@lotem 做的鼠须管很好,我现在就在用.但是它现在的最版本在macvim下从normal模式切换到insert模式下,以前的中文输入会变为英文输入,要按下shift键才能敲中文.我知道它的最新版好像是有这个问题.不知道大家有什么弥补的办法?

4.在mac的item2下,ctrl-u会删除掉整行.而不是删除从当前字符到行首,哪里可以改这个快捷键?
4243 次点击
所在节点    macOS
20 条回复
sNullp
2012-12-11 20:50:52 +08:00
2. 我知道有mvim -v
013231
2012-12-11 21:08:53 +08:00
1. ls我不清楚, gnu版本的awk和sed可以用Homebrew安裝(OS X下的包管理工具). 先安裝Homebrew, 然後
brew install gawk gun-sed
2. 如樓上所說`mvim -v`. 更多參數用`mvim -h`查看.
alexrezit
2012-12-11 21:12:43 +08:00
2. brew install vim
LazarusX
2012-12-11 21:53:58 +08:00
3. 这是鼠须管的一个feature: http://code.google.com/p/rimeime/wiki/CustomizationGuide#在特定程序裏關閉中文輸入 要取消默认英文输入的话,在patch里加一行:
app_options/org.vim.MacVim: {}
join
2012-12-11 22:08:38 +08:00
@alexrezit 这个默认的还在.
@sNullp 这个我确实没仔细想过,也算是一种解决方式....
@LazarusX 我试试.
join
2012-12-11 22:15:22 +08:00
@LazarusX 我在default.yml中加入的内容如下
patch:
app_options/org.vim.MacVim: {}
deploy后还是不管用.
难道我要另外起一个custom文件然后加入这些内容吗?
join
2012-12-11 22:19:40 +08:00
@013231 这样的话就存在两个工具了,默认的如何屏蔽呢?
lwjefSub
2012-12-11 22:21:25 +08:00
第四个是 shell 设置的吧 莫非用的 oh-my-zsh? 可以重新 bindkeys 的
013231
2012-12-11 22:32:16 +08:00
@join
alias sed=gsed
alias awk=gawk
humiaozuzu
2012-12-11 22:48:58 +08:00
1 brew install coreutils,或者试试 gentoo-prefix,但是不推荐 (@iwinux 提供答案)
http://blog.yegle.net/2010/10/23/install-gentoo-prefix-on-mac-osx/

2 安装 macvim 的时候设为默认 vim,命令行版本的也会被修改
brew install macvim --override-system-vim

3 输入法目前来看无解,一般我在不需要中文的环境上 vim,markdown 写 blog 用 Mou,有中文注释的代码用 ST2

4. 让 iTerm2 使用 readline 快捷键见下文:
http://blog.lovemaple.info/blog/2012/11/20/osx-shortcuts/
alexrezit
2012-12-11 22:50:13 +08:00
@join 默认的留着又不影响你用. 默认的 vim, git 什么的最好不要卸载, 留在那里就好了, 不然后患无穷.
LazarusX
2012-12-12 00:01:45 +08:00
@join
这是squirrel.yaml中的选项,而不是default.yaml。

推荐还是用「.custom.yaml」的方式,升级之后不会被覆盖设置。如果是在默认设置上修改,直接修改就可以,不需要用patch的方式。

我在「squirrel.custom.yaml」加上patch然后重新部署就可以了。开头的空格也不可少:
patch:
app_options/org.vim.MacVim: {}
Yannis1990
2012-12-12 10:14:36 +08:00
@humiaozuzu 问下你的博客用的是什么模版?
laoyang945
2012-12-12 11:06:50 +08:00
macvim可以在终端下运行的,你只要把那个mvim拷贝到执行文件夹里面就好
humiaozuzu
2012-12-12 11:44:18 +08:00
@Yannis1990 octopress 的 slash 主题
lotem
2012-12-12 13:15:10 +08:00
答第三問:
鼠鬚管並不能感知MacVim處於何種模式。
app_options控制輸入法的初始狀態——打開MacVim時通常是命令模式,所以默認切換到英文。
當在使用中檢測到按下 ESC 鍵或 CTRL-[ 組合鍵時,輸入法會自動切到英文,這樣就不會干擾命令模式下的按鍵;然而,進入插入模式沒有簡單的檢測方法,所以很遺憾,只能手動按shift切回中文。
技術所限……不過恰巧適合用Vim以寫代碼爲主,偶爾需要敲中文的用家。
join
2012-12-12 13:26:59 +08:00
@lotem 呵呵,确实是这样,我因为要写中文所以特意用上了textmate.
join
2012-12-13 00:14:34 +08:00
敢谢各位
我说说我最终的解决方法
1.实行曲线救国,当碰到一个命令行不熟悉时,直接上g系列的工具.然后在alias为原来的名字.
2.还是用alias vim="mvim -v"弄不了,不折腾了.
3.这个貌似暂时没法解决,需要编辑中文的时候还是使用textmate吧.
4.ctrl-u的问题,@humiaozuzu提供的链接貌似ctrl-u没法映射,只能映射其他一些快捷键盘.所以还是做罢了.
BUYI
2012-12-14 10:29:16 +08:00
lz 对你第一个问题,我感觉
你可以试试port
你想用什么GNU的工具 port search foo ; sudo port install foo;
会安装到/opt/local/bin/下。你自己设置PATH就行了。
wolflee
2012-12-14 15:47:39 +08:00
第三个难道不是加上这个么?
patch:
app_options/org.vim.MacVim:
ascii_mode: {}

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/54653

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX