Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 国产视频麻豆,激情亚洲的在线观看,国产综合精品一区二区

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          PHPStorm屬性的HTML縮進

          于具有很多屬性的標簽,我希望在新行上分割每個屬性,當按Enter鍵調用新行時,它應該只縮進一個標簽。

          以下示例輸出我想如何縮進我的屬性:

          <svg width="300px" height="150px">
           <ellipse class="fill-current" 
           cx="150" 
           cy="75" 
           rx="100"
           ry="75"
           />
          </svg>
          

          但PHPStorm會自動嘗試將我所有的行縮進到當前屬性:

          <svg width="300px" height="150px">
           <ellipse class="fill-current"
           cx="150"
           cy="75"
           rx="100"
           ry="75"
           />
          </svg>
          

          我無法在設置(編輯器 - >代碼樣式 - > HTML)中找到任何選項來更改此行為。有誰知道這個問題的解決方案?

          這背后的原因是因為我經常在我的HTML模板中使用自定義標簽。有時候我自己的標簽很長,并且是2個或(罕見的情況下)3個單詞的組合,并且在新行上啟動所有額外屬性并且它不應該在標簽的末尾對齊。自己縮進屬性是很麻煩的。我想自動化它。

          elocity中常常會寫出#foreach #if #else #end等語句,
          但由于模板文件中html本身就帶有縮進,所以最終的縮進,并不符合velocity語句的含義。當主要針對velocity邏輯閱讀時,很不方便

          沒有處理格式代碼:

          模板代碼:

          模板代碼截圖


          生成html文件截圖:

          #if產生縮進后的截圖

          解決辦法:

          “#if#foreach#else#end”這些語法,不用任何縮進。并且行尾加##注釋,表示不解析后面空格


          定格寫,末尾加##注釋


          取消縮進后結果


          velocity-wiki地址

          https://cwiki.apache.org/confluence/display/velocity/VelocityWhitespaceTruncatedByLineComment

          解決辦法截圖

          件類型


          回憶上節課內容


          • 上次了解了縮進的各種方式 正常模式下用 << 縮進 插入模式下用 tab 縮進 顯示縮進情況 :set listchars=eol:$,tab:>-,space:_
          • 有關于縮進對應空格數的參數 expandtab shiftwidth tabstop softtabstop autoindent
          • 簡寫為 :set noet sw=4 ts=4 sts=4 ai
          • 不同的文件類型可以對應不同的縮進長度嗎??


          檢測文件類型


          ?



          • 首先需要檢測文件類型
          • :filetype 可以設置當前文件類型檢測信息 :filetype on 檢測文件擴展名 :filetype off 取消檢測文件擴展名
          • 如果是.c 并且:filetype on 就可以檢測文件類型為 .c 那我怎么知道 filetype 是什么呢?
          • :set filetype? 結果是 filetype=c
          • 但是如何單獨設置 .c 文件縮進為 8 呢?


          文件類型縮進設置


          • 我們書寫一個 demo.c
          • 可以發現這個文件 tab 是對應著 4 個空格的


          ?



          • 如果想單獨設置 .c 文件類型的縮進的話 需要打開文件類型縮進的開關 :filetype indent on


          找到縮進配置文件


          • 系統的配置文件的位置在 /usr/share/vim/vim81/indent/ c 對應 c.vim java 對應 java.vim html 對應 html.vim 不同的文件類型可以設置不同的縮進 c 縮進為 8 java 縮進為 4 html 縮進為 2 找到了 /usr/share/vim/vim81/indent/c.vim 就可以設置c的縮進
          • 在最后加上 :set et sw=8 ts=8 sts=8 ai
          • 然后退出并重新打開 demo.c
          • 再g g = G
          • 就可以按照新設置的 /usr/share/vim/vim81/indent/c.vim來重新控制縮進了


          更改文件類型


          ?



          • 我們打開 demo.c 時,系統會檢測他的文件類型
          • 但是如果我們非要 硬 要說他是一個 java 文件會如何呢?
          • :set filetype=java
          • 文件對于 include 之類的語法高亮消失了
          • g g = G
          • 讓文件縮進的數量變回了 4 按照java文件縮進的要求來做
          • 高亮可以根據文件類型而不同么?


          文件類型語法高亮


          #找出所有的java.vim文件
          sudo find / -name "java.vim"  


          • 找出所有和 java 有關的文件


          ?



          • 在 indent 下的 java.vim 負責縮進
          • 在 syntax 下的 java.vim 負責語法高亮
          • 語法高亮的設置在 /usr/share/vim/vim81/syntax/下面


          ?



          • :syntax on 可以設置關鍵詞高亮,這個是所有語法高亮的根開關


          文件類型的插件


          • 除此之外,也可以加載 java 文件類型的的插件 plugin 文件類型插件可以設置一鍵編譯運行、跳轉到函數定義之類的 前提是 :set filetype plugin on
          • 文件類型插件的設置在 /usr/share/vim/vim81/ftplugin/下面 ftplugin = FileType Plugin
          • 回憶文件類型縮進和語法 在 indent 下的 java.vim 負責縮進 在 syntax 下的 java.vim 負責語法高亮
          • 在 ftplugin 下的 java.vim 負責針對 java文件類型 的插件


          命名規則


          • 除了對于每個用戶都好使的高亮、縮進和插件之外
          • 用戶還可以設置只對于自己好使的高亮、縮進和插件


          ?



          • 以 java 語言的插件來舉例
          • 系統通用文件夾 /usr/share/vim/vim81/ftplugin/java.vim /usr/share/vim/vim81/ftplugin/java_xxx.vim /usr/share/vim/vim81/ftplugin/java/xxx.vim
          • 用戶專用文件夾 ~/.vim/ftplugin/java.vim ~/.vim/ftplugin/java_def.vim ~/.vim/ftplugin/java/header.vim
          • 上面是命名的規則 java 對應的就是 filetype


          文件夾不存在?


          • 如果沒有文件夾的話就要新建 :!mkdir -p ~/.vim/ftplugin 注意是 ftplugin 而不是 plugin plugin 里面的插件全部都被加載 ftplugin 里面的插件根據文件類型加載


          嘗試分文件類型進行控制


          • 保存后
          • 打開 java 文件時 狀態欄告訴我這是 java 文件 第三行 set statusline=[oeasy-java]%F%m
          • 打開 css 文件時 狀態欄告訴我這是 css 文件 第三行 set statusline=[oeasy-css]%F%m
          • 都設置好之后
          • 分別打開java文件和css文件


          ?



          強行指定


          ?



          • 如果我偏說 css 文件是 java 文件會如何呢? 可以注意到狀態欄的變化 由于不同文件類型 filetype 的 syntax 文件不同 用 css 的語法去標注 java 的高亮組 所以高亮顯示的狀態也不同


          總結


          • 根據擴展名我們可以設置某些特定類型文件的配置
          • 相關文件類型的設置放在相應的文件夾里
          • 文件類型縮進文件夾 /usr/share/vim/vim81/indent/
          • 文件類型語法高亮文件夾 /usr/share/vim/vim81/syntax/
          • 文件類型插件文件夾 系統通用文件夾 /usr/share/vim/vim81/ftplugin/java.vim /usr/share/vim/vim81/ftplugin/java_xxx.vim /usr/share/vim/vim81/ftplugin/java/xxx.vim 用戶專用插件文件夾 ~/.vim/ftplugin/java.vim ~/.vim/ftplugin/java_def.vim ~/.vim/ftplugin/java/header.vim
          • 在 文件夾~/.vim/ftplugin中 的 html.vim 的設置 只針對 html 包括文件的縮進、配色、語法高亮、行號、狀態欄等
          • :filetype indent on 文件類型縮進生效
          • :filetype syntax on 文件類型語法高亮生效
          • :filetype plugin on 文件類型插件生效


          ?



          • 還有什么好玩的嗎?
          • 下次再說

          ?


          主站蜘蛛池模板: 精品人妻少妇一区二区三区不卡 | 国产剧情国产精品一区| 精品国产亚洲第一区二区三区| 亚洲一区二区精品视频| 蜜桃无码AV一区二区| 日韩综合无码一区二区| 日本视频一区二区三区| 四虎在线观看一区二区| 亚洲国产欧美日韩精品一区二区三区| 成人区精品人妻一区二区不卡| 一区二区三区在线观看免费| 国产SUV精品一区二区四 | 伦理一区二区三区| 日本强伦姧人妻一区二区| 国产日韩精品一区二区在线观看| 无码国产精品一区二区免费I6| 亚洲Av高清一区二区三区| 无码精品人妻一区二区三区人妻斩 | 免费高清在线影片一区| 亚洲码欧美码一区二区三区| 亚洲熟女综合色一区二区三区 | 亚洲综合av一区二区三区| 中文字幕在线一区二区在线 | A国产一区二区免费入口| 一区二区三区AV高清免费波多| 精品女同一区二区| 日韩精品无码人妻一区二区三区| 国产婷婷色一区二区三区深爱网| 国产人妖视频一区在线观看| 日韩一区二区三区精品| 一区二区三区免费在线观看| 99久久精品国产免看国产一区| 国产日韩精品一区二区三区在线 | 国产精品亚洲产品一区二区三区| 无码毛片一区二区三区中文字幕 | 久久亚洲国产精品一区二区| 无码人妻精品一区二区三区99仓本| 亚洲国产美国国产综合一区二区| 午夜福利av无码一区二区| 精品一区精品二区制服| 午夜DV内射一区区|