跨平臺IDE集成開發(fā)環(huán)境Clion入門教程(二十四):File Watcher
CLion是一款專為開發(fā)C及C++所設計的跨平臺IDE。它是以IntelliJ為基礎設計的,包含了許多智能功能來提高開發(fā)人員的生產(chǎn)力。這種強大的IDE幫助開發(fā)人員在Linux、OS X和Windows上來開發(fā)C/C++,同時它還使用智能編輯器來提高代碼質量、自動代碼重構并且深度整合CMake編譯系統(tǒng),從而提高開發(fā)人員的工作效率。
CLion 最新版本2019.3 速度高達加入了基于Clangd提供商代碼完成,消除了各種UI凍結,并介紹了許多其他的性能改進。它增強了與CMake的集成,增加了Ninja生成器支持,并提供了代碼覆蓋范圍和WSL2支持。調試器支持已在很多方面得到了顯著改善。最后,對C ++ 20的Concepts的支持包括重構,導航和代碼完成。戳此處查看更新詳情>>
文件監(jiān)視程序具有兩個專用的代碼檢查:
該文件可用的觀察者檢查每一個文件,其中一個預定義的文件Watcher是適用的運行。如果項目沒有配置相關的File Watcher,則CLion建議添加一個。
該文件觀察者問題的檢查是通過運行文件看守,并強調錯誤特定于它的調用。
您可以使用可用模板之一,也可以從頭開始配置File Watcher??梢詫⑴渲玫腇ile Watcher保存在您的項目設置或IDE設置中,并在不同的項目中使用。
當您打開適用于預定義File Watcher的文件時,CLion將顯示一個窗格,建議您激活該窗格。
單擊“ 是”以使用默認配置激活File Watcher。
如果單擊No,則CLion認為建議的File Watcher被禁止。您仍然可以按照下面的“ 創(chuàng)建File Watcher”中的說明手動創(chuàng)建和啟用它。
在“ 插件”頁面上安裝并啟用File Watchers插件 。
在“設置/首選項”對話框中Ctrl+Alt+S,單擊“ 工具”下的“ File Watcher ” 。將打開“ File Watcher”頁面,其中顯示了已在此項目和IDE中配置的文件監(jiān)視程序的列表。
單擊并選擇您要從其創(chuàng)建File Watcher的預定義模板。選擇取決于要使用的工具。要使用不在列表中的工具,請選擇自定義。將打開“ 新建監(jiān)視程序”對話框。
在名稱字段中,輸入File Watcher的名稱。默認情況下,CLion會建議選定的預定義模板的名稱。
使用“要監(jiān)視的文件”區(qū)域中的控件來定義要在其中應用文件監(jiān)視程序的文件范圍。
1、從文件類型列表中,選擇輸入文件的預期類型。 File Watcher僅將此類文件視為分析和處理的主題?;谖募愋秃臀募U展名之間的關聯(lián)來識別 文件類型。
默認情況下,該字段顯示根據(jù)所選預定義模板的文件類型。
2、選擇適用于文件監(jiān)視程序的范圍。
這些文件中的更改將立即或在保存或取消激活框架后調用File Watcher,具體取決于自動保存已編輯文件的狀態(tài)以觸發(fā) Watcher 復選框。
從列表中選擇一個預定義的范圍。對于項目級File Watcher,還可以在打開的“ 范圍”對話框中單擊 以配置自定義范圍 。
或者,在打開的“ 范圍”對話框中單擊并配置自定義范圍。
所有地點:下面列出的所有范圍。
項目文件:項目根目錄中的所有文件。
臨時和控制臺:位于“ 項目”工具窗口中的臨時和控制臺目錄中的 所有文件 。
打開文件:編輯器中當前打開的所有文件。
當前文件:在活動編輯器選項卡中打開的文件。
3、可選:指定您希望文件監(jiān)視程序如何處理依賴項。 甲根文件是不包含文件(例如通過import在任何其他文件) 在規(guī)定范圍內。
請注意,
要僅對根文件運行File Watcher,請選中“ 僅跟蹤根文件”復選框。
清除復選框以針對從其調用文件的文件以及在指定范圍內遞歸包含此文件的所有文件運行File Watcher。
請注意“ 作用域”設置會覆蓋“ 僅跟蹤根文件”復選框設置:如果依賴項不在指定的作用域內,則不會對其應用文件監(jiān)視程序。
此選項僅適用于Babel,Closure Compiler, Compass,Jade, Less,Sass / SCSS, Stylus,UglifyJS和YUI Compressor JS。
1、在“ 更改時運行工具”區(qū)域中,指定要使用的工具,要傳遞給它的參數(shù),預期的輸出文件類型,等等。
在“ 程序”字段中,指定工具可執(zhí)行文件的路徑(.exe,.cmd,.bat或其他取決于特定工具的路徑)。
如果要為項目中安裝的工具配置全局文件監(jiān)視程序(例如Prettier),則需要使用宏指定其路徑。要在路徑中使用可用的宏之一,請按“ 插入宏”按鈕。例如,使用路徑$ ProjectFileDir $ / node_modules / .bin / prettier,文件監(jiān)視程序將使用安裝在項目的node_module文件夾中的漂亮文件。
要使用程序文件名而不是其完整路徑,請將其路徑添加到系統(tǒng)環(huán)境變量PATH中。
在Windows上,您可以跳過 .com,.exe,.cmd或 .bat擴展名。
要使用jar檔案,請指定其絕對路徑?;蛘?,要使用相對路徑,請將其父文件夾添加到CLion路徑變量 上 在 外觀和行為| CLion設置的“ 路徑變量”頁面 Ctrl+Alt+S。
2、在“ 參數(shù)”字段中,定義要傳遞給工具的參數(shù)。
參數(shù)通常使用宏指定,例如$FileName$或$FileNameWithoutExtension$,這些宏將替換為實際的文件名。
手動鍵入宏,或單擊“ 插入宏”,然后從打開的“ 宏”對話框中的列表中選擇相關的模式。
3、在“ 要刷新的輸出路徑”字段中,指定工具存儲其輸出的文件:生成的源代碼,源映射和依賴項。根據(jù)這些設置,CLion會識別通過編譯生成的文件。
請注意,更改“ 輸出路徑以刷新” 字段中的值不會使該工具將其輸出存儲在其他位置。如果仍然需要這樣做,請在“ 參數(shù)”字段中指定所需的自定義輸出位置 :鍵入以冒號作為分隔符的輸出路徑,并使用宏。
通常使用宏指定輸出路徑。手動輸入路徑,或單擊“ 插入宏”, 然后從列表中選擇相關的模式。
4、展開工作目錄和環(huán)境變量隱藏區(qū)域。
5、定義環(huán)境變量。例如,PATH為啟動您正在配置的工具所需的工具指定變量,但在該變量的路徑中未引用該變量。在大多數(shù)情況下,它是Node.js或ruby.exe。這種情況可能是由于自定義手動安裝,而不是通過Node Package Manager(npm)或gem Manager安裝。
6、在“ 工作目錄”字段中,指定工具將應用到的目錄。
因為該工具始終在文件的上下文中調用,所以默認的工作目錄是當前文件的目錄。通過$FileDir$宏在所有預定義模板中指定了默認工作目錄。要指定自定義工作目錄,請在字段中鍵入該目錄的路徑,或者在“ 選擇路徑”對話框中單擊 并選擇目錄 ,或者單擊“ 插入宏”,然后 從“宏”對話框的列表中選擇所需的宏。
如果將“ 工作目錄”字段保留為空,則CLion將使用在其中調用文件監(jiān)視程序的文件目錄。
在“ 高級選項”區(qū)域中,自定義File Watcher的默認行為。
1、指定將調用文件監(jiān)視程序的事件:
要在對源代碼進行任何更改后立即調用File Watcher,請選擇自動保存編輯的文件以觸發(fā) Watcher 復選框。
清除復選框后,“文件觀察器”將在保存(“ 文件” |“全部保存”)或將焦點從CLion移動(禁用幀時)時啟動。默認情況下,文件監(jiān)視程序會在任何保存的更改(包括例如當您簽出分支時從版本控制系統(tǒng)收到的更新)時喚醒。要忽略此類更改并僅在CLion中更新代碼時調用文件監(jiān)視程序,請清除“ 在外部更改時觸發(fā)監(jiān)視程序”復選框。
2、指定是否要讓File Watcher與CLion語法解析器進行交互:
當觸發(fā)守望不管語法錯誤復選框被選中, 無論文件的語法正確性如何,F(xiàn)ile Watcher都會啟動。File Watcher將在更新,保存或取消激活框架后啟動,具體取決于自動保存已編輯文件以觸發(fā) Watcher 復選框的狀態(tài)。
清除 “ 觸發(fā)器觀察程序,無論語法錯誤”復選框后, File Watcher會忽略語法上無效的文件中的所有觸發(fā)器,并且僅在無錯誤的文件中啟動。
3、使用“ 從stdout創(chuàng)建輸出文件”復選框可以指定要如何生成輸出文件。
選中該復選框后,CLion會讀取本機工具的輸出 standard output stream (stdout)并從中生成結果文件。
清除該復選框后,該工具會將其輸出直接寫入“ 要刷新的輸出路徑”字段中指定的文件。
4、在“ 顯示控制臺”列表中,選擇希望文件監(jiān)視程序打開控制臺的時間。
始終:使用此選項,控制臺始終在工具執(zhí)行完成后打開。
錯誤時:使用此選項,僅當Exit code不同于時,控制臺在工具執(zhí)行后打開 0。
永不:選擇此選項可完全禁止打開控制臺。
如果“文件監(jiān)視程序”中配置的工具通過文件和特定行的鏈接報告有關代碼的錯誤或警告,則可以在編輯器中看到以下信息:
在首選項/設置| 編輯器 檢查時,啟用檢查File Watcher的問題。
在“ 編輯監(jiān)視程序”對話框的“ 輸出過濾器”字段中,描述要匹配的輸出的格式。使用宏,以及為。您需要避免使用特殊的符號,例如花括號和點。與宏匹配的文本將顯示在編輯器中。 $FILE_PATH$$LINE$$MESSAGE$\$MESSAGE$
保存新的File Watcher后, 您可以決定是否僅在當前項目(從“ 級別”列表中選擇“ 項目 ” )或所有項目(選擇“ 全局”)中可用。
啟用File Watcher后,一旦選定類型的文件以及選定范圍內的文件被更改或保存,它將自動啟動。
如果在運行文件監(jiān)視程序時發(fā)生錯誤,則會自動禁用文件監(jiān)視程序。要恢復狀態(tài),請手動啟用File Watcher。
可以在將來創(chuàng)建的所有新項目中自動啟用全局文件監(jiān)視程序。
打開“新項目的設置”對話框(“ 文件” |“新項目的設置”),轉到“ 工具” | “新項目” 。File Watcher,然后選中所需文件監(jiān)視程序旁邊的復選框。
或者,在“ 歡迎屏幕”上,從“ 配置”列表中選擇“設置”。在打開的對話框中,選中相關文件監(jiān)視程序旁邊的復選框。
在“首選項/設置” | “列表”中的“File Watcher”旁邊可能會出現(xiàn)紅色錯誤消息。
以下是可能的錯誤列表:
報告的問題 | 問題描述 | 解決方法 |
Unknown Scope error | File Watcher使用此項目中未定義的范圍。 | 雙擊監(jiān)視程序并選擇一個可用的作用域或創(chuàng)建一個新的作用域。 |
Not found error | 該項目使用已刪除的全局File Watcher。 | 使用“ 刪除”按鈕從列表中刪除監(jiān)視程序,或對其進行編輯以創(chuàng)建一個具有相同名稱的新全局監(jiān)視程序。 |
CLion運行許多相同的File Watcher任務 | 例如,從VCS進行批量更新后,CLion為每個保存的文件運行一個單獨的File Watcher任務。 | &FileNameWithoutExtension&在Arguments字段中添加特定于文件的宏 |
=====================================================
更多關于CLion的教程、資源敬請關注我們即將推出的后續(xù)教程哦~