2010-03-24 3 views

ответ

37

Вот процедура для perl, просто приспособите его для C. Надеюсь, это поможет.

  • Open Notepad ++
  • Тип F6, чтобы открыть окно выполнения
  • Написать следующие команды:
    • npp_save < - Сохраняет текущий документ
    • CD $(CURRENT_DIRECTORY) < - Переход к току Справочник
    • perl.exe -c -w "$(FILE_NAME)" < - выполняет c ommand perl.exe -c -w, например: perl.exe -c -w test.pl (-с = компилировать -w = предупреждений)
  • Нажмите на Сохранить
  • Введите имя, чтобы сохранить сценарий (т.е. Perl Compile)
  • Перейти к меню Плагины -> Nppexec -> дополнительные параметры -> Пункт меню (Примечание: это право НИЖЕ «Пункты меню *»)
  • в выпадающем списке под названием «Associated Script» выберите скрипт недавно созданный в раскрывающемся меню, выберите «Добавить/Изменить» и нажмите «ОК»> «ОК»
  • Restart Notepad ++
  • G o к настройкам -> ярлык mapper -> плагины -> поиск имени сценария
  • Выберите ярлык для использования (например, ctrl + 1), нажмите ok
  • Убедитесь, что теперь вы можете запустить скрипт, созданный с помощью ярлыка, выбранного ,
+1

В то же время я нашел руководство для NppExec. Он хранится в \ Notepad ++ \ plugins \ docs \ NppExec и описывает, как создавать скрипты компиляции для всех типов файлов исходного кода. Это мне очень помогло. Ваш ответ верен и, вероятно, отлично работает для скриптов perl (я не пробовал). Думаю, он будет работать и для c-файлов, если вы его измените. Спасибо! –

+1

Используя этот метод, ярлык не работает для меня, если я не открываю консоль, не накладываю туда курсор и не нажимаю ярлык. Если я это сделаю, команды будут запущены. – AlanSE

4

Вот код для compling и запуска исходного кода Java: - Open 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 Classpath должен быть установлен для этого ...

Другой полезный сайт: http://www.scribd.com/doc/52238931/Notepad-Tutorial-Compile-and-Run-Java-Program

22

Для Perl

Чтобы запустить PERL использовании сценария этой процедуры

Требования: Вы должны настроить переменную CLASSPATH.

Перейти к плагинов ->NppExec ->Execute

В командном разделе введите этот

cmd /c cd "$(CURRENT_DIRECTORY)"&&"$(FULL_CURRENT_PATH)" 

Сохранить его и дать имя ему (я даю Perl)..

Факс: ОК. Если редактор хочет перезапустить, сделайте это первым.

Теперь нажмите F6, и вы найдете свой скрипт для Perl на нижней стороне.

Примечание: не требуется отдельная конфигурация для отдельных файлов.

Для Java,

Требование: Вам нужно настроить JAVA_HOME и classpath переменной.

Перейти к plugins-> NppExec-> Выполнить

В командном разделе, введите этот

cmd /c cd "$(CURRENT_DIRECTORY)"&&"%JAVA_HOME%\bin\javac""$(FULL_CURRENT_PATH)" 

ваш *.class произведет на месте текущей папки; несмотря на ошибку программирования.

Для Python,

Используйте этот плагин Python Plugin

Перейти к plugins-> NppExec-> Запустить файл в Python intercative

С помощью этого вы можете запускать скрипты в пределах Notepad ++.

Для PHP,

Нет необходимости в другой конфигурации просто скачайте этот плагин.

PHP Plugin и сделано.

Для языка C,

Требования: Вы должны настроить переменную CLASSPATH.
Я использую компилятор MinGW.

Перейти к plugins-> NppExec-> Выполнить

вставьте в там

NPP_SAVE 

    CD $(CURRENT_DIRECTORY) 

    C:\MinGW32\bin\gcc.exe -g "$(FILE_NAME)" 

    a 

(Не забудьте дать выше четырех линий отдельных линий.)

Теперь, дать имя, сохранить и ОК.

Restart Npp.

Перейти к плагинам-> NppExec-> Дополнительные параметры.

Меню item-> Название товара (у меня есть C компилятор)

Associated Script-> из выпадающего списка выберите выше имя сценария.

Нажмите Добавить/изменить и ОК.

Теперь назначьте комбинацию клавиш, как указано в первом ответе.

Нажмите F6 и выберите сценарий или просто нажмите клавишу быстрого доступа (я назначил Ctrl +).

Для C++,

Только смена г ++ вместо gcc и *.cpp вместо этого на *.c

Вот и все !!

+3

@ hims056 Спасибо за форматирование! –

+2

Мне нужно это '... javac" "$ (FULL ...', чтобы сделать работу java. (Добавить пробел) – johnchen902

+0

Для инструкций C, когда я получаю плагины, я не вижу перечисленные NppExec, только NppExport и NppFTP. Является ли NppExec дополнительным плагином, который необходимо установить? –

2

Вы можете просмотреть следующую страницу с большой информацией о NppExec.

Я лично использую следующий пакетный скрипт, который можно использовать для многих типов файлов (C, makefile, Perl-скриптов, скриптов оболочки, пакетной обработки ...). Я храню этот файл в каталоге пользователей Notepad ++ (% APPDATA%/Notepad ++) под именем runNcompile.bat.

Затем я использую команду NppExec "$(SYS.APPDATA)\Notepad++\runNcompile.bat" "$(FULL_CURRENT_PATH)" при проверке опции «Следуйте за $ (CURRENT_DIRECTORY)» в меню NppExec. И чтобы закончить, я назначил специальный ключ (я переназначил F12), чтобы запустить скрипт.

Надеется, что это может помочь

@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 
0

декомпилировать с CMD:

Если те, не работают, попробуйте это:

cmd /K g++ "$(FULL_CURRENT_PATH)" -o "$(FULL_CURRENT_PATH).exe 

Он должен сохранить, где вы получил файл (пример: Если я получил файл с рабочего стола, он будет сохранен как .exe на рабочем столе)

Я не знаю, работает ли он o n 64 бит, хотя вы можете попробовать!

0

Я написал только это, чтобы выполнить компиляцию и запустить файл после того, как, плюс fileinputname = fileoutputname на windowsmashines, если ваш compilerpath является зарегестрирована в окнах PATH-вар:

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, что вы хотите

1

Я сделал один мощный скрипт, который будет:.

-Compile и запустить мульти код языка как C, C++, Java, Python и C#.
-Удалить старый исполняемый файл перед компиляцией кода.
-Одно запустить код, если он скомпилирован успешно.

Я также сделал очень нуб дружественный учебник Transform Notepad++ to Powerful Multi Languages 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! 
1

Вы можете компилировать и код запуска C даже без использования плагинов nppexec. Если вы используете компилятор MingW32 C, используйте g ++ для языка C++ и gcc для языка C.

Вставить этот код в Notepad ++ запустить раздел

cmd /k cd $(CURRENT_DIRECTORY) && gcc $(FILE_NAME) -o $(NAME_PART).exe && $(NAME_PART).exe && pause 

Это будет скомпилировать код C в ехе и запустить его немедленно. Это похоже на функцию сборки и запуска в CodeBlock. Все это делается с некоторыми знаниями CMD.

Объяснение:

  1. CMD/к, используется для тестирования.
  2. CD $ (CURRENT_DIRECTORY)
    • изменить каталог, где находится файл
  3. & & операторы
    • к цепи у наши команды в одной строке
  4. НКУ $ (имя_файла)
    • использования GCC для компиляции файла с его расширением файла.
  5. -o $ (NAME_PART) .exe
    • этот флаг позволяет выбрать имя выходного файла. $ (NAME_PART) не включает расширение файла.
  6. $ (NAME_PART) .exe
    • это само по себе работает программа
  7. пауза
    • эта команда используется, чтобы держать вашу консоль открытым после того, как файл был выполнен.

Для получения дополнительной информации о командах Notepad ++, перейдите

http://docs.notepad-plus-plus.org/index.php/External_Programs

1

Я рекомендую мое решение. Мое положение: g ++ (cygwin) on win10

Мое решение: Запишите командный файл .bat и выполните компилятор в этой партии. compileCpp.bat

@echo off 
set PATH=%PATH%;C:\cygwin64\bin\ 
rm %~n1.exe 
c++.exe -g %~dpnx1 -o %~dpn1.exe 
%~n1.exe 

консоли:

NPP_EXEC: "runCpp" 
NPP_SAVE: E:\hw.cpp 
CD: E:\ 
Current directory: E:\ 
cmd /c C:\cygwin64\bin\compileCpp.bat "hw.cpp" 
Process started >>> 
Hello World<<< Process finished. (Exit code 0) 
================ READY ================ 
0

В окнах, если вы используете портативную версию MinGW вы должны установить переменную пути или у Вас есть ошибка libintl-8.dll не найдено. Мой путь: C: \ Program Files (x86) \ CodeBlocks \ MinGW \ bin

Смежные вопросы