Pergunta

Como posso configurar o plug -in NPPEXEC para bloco de notas ++?

Eu gostaria que o NPPEXEC compile meus arquivos C, executasse -os e mostre sua saída, tudo dentro do bloco de notas ++.

Foi útil?

Solução

Aqui está um procedimento para o Perl, basta adaptá -lo para C. Espero que ajude.

  • Abra o bloco de notas ++
  • Digite F6 para abrir a janela Execute
  • Escreva os seguintes comandos:
    • npp_save <- salva o documento atual
    • CD $(CURRENT_DIRECTORY) <- se move para o diretório atual
    • perl.exe -c -w "$(FILE_NAME)" < -Executa o comando perl.exe -c -w, exemplo: perl.exe -c -w test.pl (-c = compile -w = avisos)
  • Clique em Salvar
  • Digite um nome para salvar o script (ou seja, compilar)
  • Vá para os plugins de menu -> NPPEXEC -> Opções avançadas -> Item do menu (Nota: Isso está logo abaixo de 'itens do menu *')
  • No ComboBox intitulado 'Script associado' Selecione o script criado recentemente em seu menu suspenso, selecione 'Adicionar/modificar' e clique em OK -> OK
  • Reinicie o bloco de notas ++
  • Vá para Configurações -> Mapper de atalho -> Plugins -> Pesquise o nome do script
  • Selecione o atalho para usar (por exemplo, Ctrl + 1), clique em OK
  • Verifique se agora você pode executar o script criado com o atalho selecionado.

Outras dicas

Para Perl,

Para executar o script Perl, use este procedimento

Requisito: você precisa configurar a variável ClassPath.

Vamos para plugins->NPPEXEC->Executar

Na seção de comando, digite isso

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

Salve e dê o nome. (Eu dou Perl).

Imprensa OK. Se o editor quiser reiniciar, faça -o primeiro.

Agora pressione F6 E você encontrará sua saída de script Perl no lado abaixo.

NOTA: Não é necessário Config separado para arquivos separados.

Para java,

Requisito: você precisa configurar JAVA_HOME e classpath variável.

Vá para plugins-> nppexec-> execute

Na seção de comando, digite isso

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

sua *.class gerará na localização da pasta atual; Apesar do erro de programação.

Para Python,

Use este plug -in Plugin python

Vá para plugins-> nppexec-> Executar arquivo no python intercativo

Ao usar isso, você pode executar scripts no bloco de notas ++.

Para PHP,

Não há necessidade de configuração diferente, basta baixar este plug -in.

Plugin php E feito.

Para C Language,

Requisito: você precisa configurar a variável ClassPath.
Estou usando o Mingw Compiler.

Vá para plugins-> nppexec-> execute

Cole isso lá

   NPP_SAVE

   CD $(CURRENT_DIRECTORY)

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

   a

(Lembre -se de fornecer acima de quatro linhas separadas.)

Agora, dê o nome, salve e ok.

Reinicie a NPP.

Vá para Plugins-> NPPEXEC-> Opções avançadas.

Menu Item-> Nome do item (eu tenho C Compilador)

Script associado-> Na caixa Combo Selecione o nome acima do script.

Clique em Adicionar/Modificar e OK.

Agora atribua a chave de atalho conforme fornecido na primeira resposta.

Imprensa F6 e selecione script ou apenas pressione atalho (eu atribuí Ctrl+2).

Para C ++,

Apenas altere G ++ em vez de gcc e *.cpp em vez de *.c

É isso!!

Aqui está o código para complicar e executar o código fonte Java: - Open Notepadd ++ - Hit F6- Cole este código

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

A variável Java ClassPath deve ser definida para isso ...

Outro site útil: http://www.scribd.com/doc/52238931/notepad-tutorial-compile-and-run-java-program

Você pode verificar a página a seguir com muitas informações no NPPEXEC.

Pessoalmente, uso o seguinte script em lote que pode ser usado em muitos tipos de arquivos (C, makefile, scripts Perl, scripts de shell, lote, ...). Armazeto esse arquivo no diretório do usuário do bloco de notas ++ (%appData%/notepad ++) no nome runncompile.bat.

Eu então uso o comando NPPEXEC "$(SYS.APPDATA)\Notepad++\runNcompile.bat" "$(FULL_CURRENT_PATH)" Ao verificar a opção "Siga $ (current_directory)" no menu NPPEXEC. E para terminar, atribuo uma chave especial (reatceitei F12) para iniciar o script.

Espero que possa ajudar

  @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

Você pode realmente compilar e executar o código C mesmo sem o uso de plugins NPPEXEC. Se você usar o compilador Mingw32 C, use G ++ para idioma C ++ e GCC para o idioma C.

Cole este código na seção Notepad ++ Run

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

Ele compilará seu código C no EXE e o executará imediatamente. É como um recurso de compilação e corrida no CodeBlock. Tudo isso é feito com algum conhecimento de CMD.

Explicação:

  1. CMD /K é usado para teste.
  2. CD $ (current_directory)
    • Alterar diretório para onde o arquivo está localizado
  3. && operadores
    • Para encadear seus comandos em uma única linha
  4. gcc $ (file_name)
    • Use o GCC para compilar o arquivo com sua extensão de arquivo.
  5. -o $ (name_part) .exe
    • Este sinalizador permite que você escolha seu nome de arquivo de saída. $ (Name_part) não inclui extensão de arquivo.
  6. $ (Name_part) .exe
    • Isso por si só executa seu programa
  7. pausa
    • Este comando é usado para manter seu console aberto após a execução do arquivo.

Para mais informações sobre comandos no bloco de notas ++, vá para

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

Eu fiz um único script poderoso que vai:

-Compile e execute o código multi idioma como C, C++, Java, Python e C#.
-Elete o antigo executável antes de compilar o código.
-No execute o código se for compilado com sucesso.

Eu também fiz um tutorial amigável muito noob Transforme o bloco de notas ++ em poderosos idiomas IDE que contém alguns scripts adicionais gostam apenas de executar ou compilar o código, executar o código dentro do CMD etc.

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!

Eu recomendo minha solução. Minha situação: G ++ (Cygwin) no Win10

Minha solução: escreva um arquivo .bat lote e execute o compilador nesse lote. Compilecpp.bat

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

Console:

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 ================

Decompilar com CMD:

Se eles não funcionaram, tente isto:

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

Ele deve salvar onde você obteve o arquivo (exemplo: se eu obtiver o arquivo do desktop, ele será salvo como .exe na área de trabalho)

Eu não sei se funciona em 64 bits para que você possa tentar!

Eu escrevi exatamente isso para executar a compilação e executar o arquivo depois, mais fileInputName = FileOutputName no WindowsMashines, se o seu compilerPath for registrado no 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)"

deve funcionar para qualquer compilador se você mudar C ++. Exe para o que você deseja

No Windows, se você estiver usando uma versão portátil do mingw, você deve definir a variável do caminho ou ter erro libntl-8.dll não encontrado. Meu caminho é C: Arquivos de Programas (x86) CodeBlocks Mingw Bin

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top