37022


Vim scriptで以下のようなコードを書き、開くファイルによって挙動を変えようと試みました。  
しかしこのコードを`.vimrc`に書きVimを起動させましたが、`Python`のファイルを開いても  
`g:vim_standard_format`が1のままになってしまいます。

この件について十分に調べたつもりではありますが、`autocmd`を使用して変数に代入している例が  
あまり無く、自分だけでは解決できそうにないので質問させていただきました。

どなたかご教示いただけますでしょうか。

[code]

    filetype plugin indent on
    let g:vim_standard_format = 1
    autocmd FileType python let g:vim_standard_format=0
    
    echo g:vim_standard_format
    
[/code]

念のため自身の環境も載せておきます。

[code]

    Ubuntu 14.04.5LTS
    
    VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Aug  4 2017 01:55:49)
    適用済パッチ: 1-851
    Huge 版 with GTK2 GUI.  機能の一覧 有効(+)/無効(-)
    +acl             +file_in_path    +mouse_sgr       +tag_old_static
    +arabic          +find_in_path    -mouse_sysmouse  -tag_any_white
    +autocmd         +float           +mouse_urxvt     -tcl
    +balloon_eval    +folding         +mouse_xterm     +termguicolors
    +browse          -footer          +multi_byte      -terminal
    ++builtin_terms  +fork()          +multi_lang      +terminfo
    +byte_offset     +gettext         -mzscheme        +termresponse
    +channel         -hangul_input    +netbeans_intg   +textobjects
    +cindent         +iconv           +num64           +timers
    +clientserver    +insert_expand   +packages        +title
    +clipboard       +job             +path_extra      +toolbar
    +cmdline_compl   +jumplist        +perl            +user_commands
    +cmdline_hist    +keymap          +persistent_undo +vertsplit
    +cmdline_info    +lambda          +postscript      +virtualedit
    +comments        +langmap         +printer         +visual
    +conceal         +libcall         +profile         +visualextra
    +cryptv          +linebreak       +python/dyn      +viminfo
    +cscope          +lispindent      +python3/dyn     +vreplace
    +cursorbind      +listcmds        +quickfix        +wildignore
    +cursorshape     +localmap        +reltime         +wildmenu
    +dialog_con_gui  +lua             +rightleft       +windows
    +diff            +menu            +ruby            +writebackup
    +digraphs        +mksession       +scrollbind      +X11
    +dnd             +modify_fname    +signs           -xfontset
    -ebcdic          +mouse           +smartindent     +xim
    +emacs_tags      +mouseshape      +startuptime     +xpm
    +eval            +mouse_dec       +statusline      +xsmp_interact
    +ex_extra        +mouse_gpm       -sun_workshop    +xterm_clipboard
    +extra_search    -mouse_jsbterm   +syntax          -xterm_save
    +farsi           +mouse_netterm   +tag_binary      
    
[/code]


CC BY-SA 3.0
2017-08-05T08:41:10.397
36963
2017-08-08T13:21:31.060
2017-08-05T10:26:01.243
440
question
vim
VimのFileTypeについて


VimでPythonファイルを編集するときに、`gg=G`の整形でautopep8を使う方法、として回答します。

vimrcに下記の内容を書くことで実現できます。

[code]

    autocmd FileType python setlocal equalprg=autopep8\ -
    
[/code]

（pythonのとき、vimの`=`コマンドで使う外部プログラムとしてautopep8を指定するという内容です）


CC BY-SA 3.0
2017-08-08T13:21:31.060
37022
2017-08-08T13:21:31.060
9575
36963
answer