Notepad++ 用に NppExec プラグインを構成するにはどうすればよいですか?
NppExec で C ファイルをコンパイルし、実行し、出力をすべて Notepad++ 内で表示できるようにしたいと考えています。
これは Perl 用の手順です。C 用に調整してください。お役に立てば幸いです。
npp_save
<-- 現在のドキュメントを保存しますCD $(CURRENT_DIRECTORY)
<-- 現在のディレクトリに移動perl.exe -c -w "$(FILE_NAME)"
<-- コマンド perl.exe -c -w を実行します。例: perl.exe -c -w test.pl
(-c = compile -w = warnings)パールの場合、
perl スクリプトを実行するには、この手順を使用します
要件: クラスパス変数を設定する必要があります。
プラグインに移動-> NppExec ->実行
コマンドセクションで、これを入力します
cmd /c cd "$(CURRENT_DIRECTORY)"&&"$(FULL_CURRENT_PATH)"
保存して名前を付けます (Perl を指定します)。
を押しOKます。編集者が再起動したい場合は、最初に実行してください。
ここで押すF6と、Perl スクリプトの出力が下に表示されます。
注: 個別のファイルに個別の構成は必要ありません。
Javaの場合、
JAVA_HOME
要件: セットアップとclasspath
変数 が必要です。
plugins->NppExec->Execute に移動します
コマンドセクションで、これを入力します
cmd /c cd "$(CURRENT_DIRECTORY)"&&"%JAVA_HOME%\bin\javac""$(FULL_CURRENT_PATH)"
*.class
現在のフォルダーの場所に生成されます。プログラミングエラーにもかかわらず。
パイソンの場合、
使用するプラグインPython プラグイン
plugins->NppExec-> Run file in Python intercative に移動します
これを使用すると、Notepad++ 内でスクリプトを実行できます。
PHPの場合、
このプラグインをダウンロードするだけで、別の設定は必要ありません。
PHPプラグイン で完了。
C言語の場合、
要件: クラスパス変数を設定する必要があります。
MinGW コンパイラを使用しています。
plugins->NppExec->Execute に移動します
これをそこに貼り付けます
NPP_SAVE
CD $(CURRENT_DIRECTORY)
C:\MinGW32\bin\gcc.exe -g "$(FILE_NAME)"
a
(上記の 4 行を別々の行に指定することを忘れないでください。)
次に、名前を付けて保存し、OK します。
Npp を再起動します。
プラグイン -> NppExec -> 詳細オプションに移動します。
メニュー項目 -> 項目名 (私は C コンパイラを持っています)
Associated Script-> コンボボックスから上記のスクリプト名を選択します。
[追加/変更] をクリックし、[OK] をクリックします。
最初の回答に示されているように、ショートカットキーを割り当てます。
スクリプトを押しF6て選択するか、ショートカットを押します(Ctrl+を割り当てまし2た)。
C++ の場合、
の代わりgcc
にg++ のみを変更してください*.cpp
*.c
それでおしまい!!
Java ソース コードをコンパイルして実行するためのコードは次のとおりです。 - Notepadd++ を開きます - F6を押します - このコードを貼り付けます
npp_save <-- Saves the current document
CD $(CURRENT_DIRECTORY) <-- Moves to the current directory
javac "$(FILE_NAME)" <-- compiles your file named *.java
java "$(NAME_PART)" <-- executes the program
これにはJavaクラスパス変数を設定する必要があります...
別の便利なサイト: http://www.scribd.com/doc/52238931/Notepad-Tutorial-Compile-and-Run-Java-Program
私は個人的に、多くの種類のファイル (C、makefile、Perl スクリプト、シェル スクリプト、バッチなど) で使用できる次のバッチ スクリプトを使用しています。
それの使い方:
"$(SYS.APPDATA)\Notepad++\runNcompile.bat" "$(FULL_CURRENT_PATH)"
ます (オプションでnpp_save
、最初の行に配置して、実行する前にファイルを保存できます)このページでは、グローバル フローを非常に明確に説明しています: https://www.thecrazyprogrammer.com/2015/08/configure-notepad-to-run-c-cpp-and-java-programs.html
それが役立つことを願っています
@echo off
REM ----------------------
REM ----- ARGUMENTS ------
REM ----------------------
set FPATH=%~1
set FILE=%~n1
set DIR=%~dp1
set EXTENSION=%~x1
REM ----------------------
REM ----------------------
REM ------- CONFIG -------
REM ----------------------
REM C Compiler (gcc.exe or cl.exe) + options + object extension
set CL_compilo=gcc.exe
set CFLAGS=-c "%FPATH%"
set OBJ_Ext=o
REM GNU make
set GNU_make=make.exe
REM ----------------------
IF /I "%FILE%"==Makefile GOTO _MAKEFILE
IF /I %EXTENSION%==.bat GOTO _BAT
IF /I %EXTENSION%==.sh GOTO _SH
IF /I %EXTENSION%==.pl GOTO _PL
IF /I %EXTENSION%==.tcl GOTO _TCL
IF /I %EXTENSION%==.c GOTO _C
IF /I %EXTENSION%==.mak GOTO _MAKEFILE
IF /I %EXTENSION%==.mk GOTO _MAKEFILE
IF /I %EXTENSION%==.html GOTO _HTML
echo Format of argument (%FPATH%) not supported!
GOTO END
REM Batch shell files (bat)
:_BAT
call "%FPATH%"
goto END
REM Linux shell scripts (sh)
:_SH
call sh.exe "%FPATH%"
goto END
REM Perl Script files (pl)
:_PL
call perl.exe "%FPATH%"
goto END
REM Tcl Script files (tcl)
:_TCL
call tclsh.exe "%FPATH%"
goto END
REM Compile C Source files (C)
:_C
REM MAKEFILES...
IF EXIST "%DIR%Makefile" ( cd "%DIR%" )
IF EXIST "%DIR%../Makefile" ( cd "%DIR%/.." )
IF EXIST "%DIR%../../Makefile" ( cd "%DIR%/../.." )
IF EXIST "Makefile" (
call %GNU_make% all
goto END
)
REM COMPIL...
echo -%CL_compilo% %CFLAGS%-
call %CL_compilo% %CFLAGS%
IF %ERRORLEVEL% EQU 0 (
echo -%CL_compilo% -o"%DIR%%FILE%.exe" "%DIR%%FILE%.%OBJ_Ext%"-
call %CL_compilo% -o"%DIR%%FILE%.exe" "%DIR%%FILE%.%OBJ_Ext%"
)
IF %ERRORLEVEL% EQU 0 (del "%DIR%%FILE%.%OBJ_Ext%")
goto END
REM Open HTML files in web browser (html and htm)
:_HTML
start /max /wait %FPATH%
goto END
REM ... END ...
:END
echo.
IF /I "%2" == "-pause" pause
私は、次のことを行う単一の強力なスクリプトを作成しました。
- 、、、、などの多言語コードをコンパイルしてC
実行します。
-コードをコンパイルする前に、古い実行可能ファイルを削除します。
-コードが正常にコンパイルされた場合にのみコードを実行します。 C++
Java
Python
C#
また、非常に初心者向けのチュートリアル「Notepad++ を強力な多言語 IDE に変換する」も作成しました。これには、コードの実行のみやコンパイル、CMD 内でのコードの実行などの追加のスクリプトが含まれています。
npp_console 1 //open console
NPP_CONSOLE - //disable output of commands
npe_console m- //disable unnecessary output
con_colour bg= 191919 fg= F5F5F5 //set console colors
npp_save //save the file
cd $(CURRENT_DIRECTORY) //follow current directory
NPP_CONSOLE + //enable output
IF $(EXT_PART)==.c GOTO C //if .c file goto C label
IF $(EXT_PART)==.cpp GOTO CPP //if .cpp file goto CPP label
IF $(EXT_PART)==.java GOTO JAVA //if .java file goto JAVA label
IF $(EXT_PART)==.cs GOTO C# //if .cs file goto C# label
IF $(EXT_PART)==.py GOTO PYTHON //if .py file goto PYTHON label
echo FILE SAVED
GOTO EXITSCRIPT // else treat it as a text file and goto EXITSCRIPT
//C label
:C
cmd /C if exist "$(NAME_PART).exe" cmd /c del "$(NAME_PART).exe"//delete existing executable file if exists
gcc "$(FILE_NAME)" -o $(NAME_PART) //compile file
IF $(EXITCODE) != 0 GOTO EXITSCRIPT //if any compilation error then abort
echo C CODE COMPILED SUCCESSFULLY: //print message on console
$(NAME_PART) //run file in cmd, set color to green and pause cmd after output
GOTO EXITSCRIPT //finally exits
:CPP
cmd /C if exist "$(NAME_PART).exe" cmd /c del "$(NAME_PART).exe"
g++ "$(FILE_NAME)" -o $(NAME_PART)
IF $(EXITCODE) != 0 GOTO EXITSCRIPT
echo C++ CODE COMPILED SUCCESSFULLY:
$(NAME_PART)
GOTO EXITSCRIPT
:JAVA
cmd /C if exist "$(NAME_PART).class" cmd /c del "$(NAME_PART).class"
javac $(FILE_NAME) -Xlint
IF $(EXITCODE) != 0 GOTO EXITSCRIPT
echo JAVA CODE COMPILED SUCCESSFULLY:
java $(NAME_PART)
GOTO EXITSCRIPT
:C#
cmd /C if exist "$(NAME_PART).exe" cmd /c del "$(NAME_PART).exe"
csc $(FILE_NAME)
IF $(EXITCODE) != 0 GOTO EXITSCRIPT
echo C# CODE COMPILED SUCCESSFULLY:
$(NAME_PART)
GOTO EXITSCRIPT
:PYTHON
echo RUNNING PYTHON SCRIPT IN CMD: //python is a script so no need to compile
python $(NAME_PART).py
GOTO EXITSCRIPT
:EXITSCRIPT
// that's all, folks!
nppexec プラグインを使用しなくても、実際に C コードをコンパイルして実行できます。MingW32 C コンパイラを使用する場合は、C++ 言語には g++ を、C 言語には gcc を使用します。
このコードを notepad++ 実行セクションに貼り付けます
cmd /k cd $(CURRENT_DIRECTORY) && gcc $(FILE_NAME) -o $(NAME_PART).exe && $(NAME_PART).exe && pause
C コードを exe にコンパイルし、すぐに実行します。これは、CodeBlock のビルドおよび実行機能のようなものです。これらはすべて、cmd の知識があれば実行できます。
説明:
notepad++ コマンドの詳細については、
http://docs.notepad-plus-plus.org/index.php/External_Programs
これは一種の古い質問であることは知っていますが、これを回答として追加しています(うまくいけば、全体的な回答に追加されます)。私は最近これらのステップを経て、これを思いつきました。
同じためのステップバイステップのビデオチュートリアルを作成しました。(ビデオは 1 万語に匹敵するものです!)
Notepad++ で C コードをコンパイルして実行する方法
ステップバイステップのチュートリアルを探している人に役立つことを願っています。
いつものように、私がこの YouTube チャンネルを所有しているという免責事項。自己宣伝のように聞こえるかもしれませんが、この質問を始めた人にこの回答で十分な情報を提供できたことを願っています. ありがとうございました。
あなたのコンパイラパスがWindows PATH-varに登録されている場合、コンパイルを実行してファイルを実行するためにこれを書きました。
NPP_SAVE
cd "$(CURRENT_DIRECTORY)"
set LEN~ strrfind $(FILE_NAME) .
set EXENAME ~ substr 0 $(LEN) $(FILE_NAME)
set $(EXENAME) = $(EXENAME).exe
c++.exe "$(FILE_NAME)" -o "$(EXENAME)"
"$(EXENAME)"
c++.exe を必要なものに変更すると、どのコンパイラでも機能するはずです
CMD で逆コンパイルします。
それらがうまくいかない場合は、これを試してください:
cmd /K g++ "$(FULL_CURRENT_PATH)" -o "$(FULL_CURRENT_PATH).exe
ファイルを取得した場所に保存する必要があります (例: デスクトップからファイルを取得した場合、デスクトップに .exe として保存されます)。
64ビットで動作するかどうかはわかりませんが、試してみてください!