加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

在编写文件时,Vim似乎陷入困境

发布时间:2020-12-15 21:05:36 所属栏目:安全 来源:网络整理
导读:我在OSX和Vim中使用Terminal.app.每次我尝试编写/保存特定文件(它恰好是.scss文件)时,Vim似乎只是挂起.我知道它成功地写了文件,但它永远不会让我重新控制.相反,我在底部看到文件名,光标在行尾闪烁.我尝试过Ctrl-Esc,Ctrl-c和Ctrl- [都无济于事. 如果我然后退
我在OSX和Vim中使用Terminal.app.每次我尝试编写/保存特定文件(它恰好是.scss文件)时,Vim似乎只是挂起.我知道它成功地写了文件,但它永远不会让我重新控制.相反,我在底部看到文件名,光标在行尾闪烁.我尝试过Ctrl-Esc,Ctrl-c和Ctrl- [都无济于事.

如果我然后退出Terminal.app并重新打开它,我可以看到卡住的Vim进程仍然在Activity Monitor中运行.

我能够写好其他文件.

我也在使用CodeKit观看.scss文件,但认为可能是原因,我退出CodeKit并尝试用Vim再次编写文件,但它仍然卡住了.

如果我使用MacVim它似乎写得正确,它似乎无法通过Terminal.app工作.

任何建议将不胜感激,谢谢!

编辑

这是我目前的.vimrc:https://www.dropbox.com/s/1r72shv47f07crs/.vimrc

我正在使用Vim 7.3,以下是详细信息:

VIM - Vi IMproved 7.3 (2010 Aug 15,compiled Jun 20 2012 13:16:02)
Compiled by root@apple.com
Normal version without GUI.  Features included (+) or not (-):
-arabic +autocmd -balloon_eval -browse +builtin_terms +byte_offset +cindent 
-clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments 
-conceal +cryptv +cscope +cursorbind +cursorshape +dialog_con +diff +digraphs 
-dnd -ebcdic -emacs_tags +eval +ex_extra +extra_search -farsi +file_in_path 
+find_in_path +float +folding -footer +fork() -gettext -hangul_input +iconv 
+insert_expand +jumplist -keymap -langmap +libcall +linebreak +lispindent 
+listcmds +localmap -lua +menu +mksession +modify_fname +mouse -mouseshape 
-mouse_dec -mouse_gpm -mouse_jsbterm -mouse_netterm -mouse_sysmouse 
+mouse_xterm +multi_byte +multi_lang -mzscheme +netbeans_intg -osfiletype 
+path_extra -perl +persistent_undo +postscript +printer -profile +python/dyn 
-python3 +quickfix +reltime -rightleft +ruby/dyn +scrollbind +signs 
+smartindent -sniff +startuptime +statusline -sun_workshop +syntax +tag_binary 
+tag_old_static -tag_any_white -tcl +terminfo +termresponse +textobjects +title
 -toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo 
+vreplace +wildignore +wildmenu +windows +writebackup -X11 -xfontset -xim -xsmp
 -xterm_clipboard -xterm_save 
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
      user exrc file: "$HOME/.exrc"
  fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -D_FORTIFY_SOURCE=0 -Iproto -DHAVE_CONFIG_H -arch i386 -arch x86_64 -g -Os -pipe
Linking: gcc -arch i386 -arch x86_64 -o vim -lncurses

这就是我的.bash_profile中的所有内容:

# Tell ls to be colourful
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced

# Tell grep to highlight matches
export GREP_OPTIONS='--color=auto'

解决方法

我终于找到了问题的原因.它确实与文件权限有关.我在同一目录中创建了一个新的test.scss文件,并且能够使用Terminal.app中的vim保存更改.然后我比较了test.scss文件和导致我麻烦的主要style.scss文件的权限.结果看起来像这样:

test.scss

-rwx------

并为style.scss(导致我麻烦的文件)

-rwx------@

我怀疑CodeKit在最初扫描时(通过CodeKit)在文件中添加了一些额外的文件属性,并且这些额外的属性(如@所示)是罪魁祸首.这可以解释为什么即使CodeKit没有运行我仍然遇到问题.我使用xattr命令检查给我com.apple.ResourceFork的附加属性.然后我使用带有-d标志的xattr从文件中删除此附加属性,问题得到修复.

xattr -d com.apple.ResourceFork style.scss

我怀疑这是一个非常模糊和具体的情况,但希望它对其他人也有帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读