Como criar uma build system no SublimeText 3 [RESOLVIDO]

1. Como criar uma build system no SublimeText 3 [RESOLVIDO]

Lucas
GogetinhaxD

(usa Ubuntu)

Enviado em 03/02/2021 - 00:27h

Bom dia, tarde ou noite a todos(as)!
Então, eu comecei a estudar C e Python quando ingressei na faculdade, fui recomendado a usar o SublimeText para programar e etc, mas na hora de compilar o console do sublime é meio limitado e eu preferia ver as coisas pelo terminal do Ubuntu msm, um amigo conseguiu com um veterano uma buildsystem que, ao pressionar "f6" o programa era salvo, dps abria o terminal e já compilava o programa. Dps de um tempo eu formatei o Ubuntu para atualizar para a nova versão (20.04), e perdi essa buildsystem personalizada.
Alguém tem alguma ideia ou sabe como eu poderia fazer uma buildsystem igual a que eu expliquei(pra python)? Pesquisei mas não consegui achar nada!

xD



  


2. MELHOR RESPOSTA

João Paulo
princknoby

(usa Arch Linux)

Enviado em 03/02/2021 - 09:41h

Está usando o GNOME?
Dependendo da sua DE o comando fica diferente, vou assumir que você esteja com o GNOME:

Dentro do sublime text vá em TOOLS -> BUILD SYSTEM -> NEW BUILD SYSTEM

Apague tudo que estiver escrito e cole o seguinte código (para compilar e executar a linguagem C)


{
"shell_cmd": "gcc -std=c99 \"${file}\" -o \"${file_path}/${file_base_name}\"",
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c",

"variants":
[
{
"name": "Run",
"shell_cmd": "gnome-terminal -- bash -c \"if [ -f '${file_path}/${file_base_name}' ]; then rm '${file_path}/${file_base_name}'; fi; gcc -std=c99 '${file}' -o '${file_path}'/'${file_base_name}'; '${file_path}'/'${file_base_name}'; read -p '-------------------------------------------\nProcess Exit, Press any key to quit...'\""
}
]
}


Vai salvar (Ctrl + s), e colocar o nome que você quiser, no caso eu coloquei "C-Compiler", em seguida pode fechar o arquivo.
Agora vá novamente em TOOLS -> E agora selecione BUILD -> E selecione o nome que você tinha salvo o arquivo no meu caso -> C-Compiler

Agora é só dentro de algum código usar o atalho CTRL + B e ele vai compilar o arquivo e rodar (vai aparecer umas opções, selecione C-Compiler - run).

E pronto :D


Agora em python 3 (Eu não programo em python (sei o básico do básico do básico), então não sei se isso vai rodar todo código)

Faça o mesmo caminho: TOOLS -> BUILD SYSTEM -> NEW BUILD SYSTEM

Apague o que estiver escrito, e cole o seguinte código:

{
"cmd": ["gnome-terminal -e 'bash -c \"python3 -u $file;echo;echo Press ENTER to exit; read line\"'"],"shell": true
}


Salve e coloque o nome que você quiser, eu coloquei "Python3-Compiler", pode fechar, e novamente a mesma coisa:
Vá novamente em TOOLS -> E agora selecione BUILD -> E selecione o nome que você tinha salvo o arquivo no meu caso -> Python3-Compiler

Vá até um código em python, e compile e rode usando CTRL + B

Eu testei com o seguinte "código" (se é que posso chamar isso de código rsrs):

# Comentário

print('Hello World!')
print('First program for python!')

n1 = int(input('Digite um número: ')) # se não colocar o int vai ser uma string
n2 = int(input('Digite outro número: '))
s = n1 + n2 # se for uma string o '+' vai concatenar as strings

print('Soma: ', s)

# Exemplo string concatenada
pm = input('Primeiro nome: ')
sm = input('Segundo nome: ')

nf = pm + sm # concatena as strings
print('Nome: ', nf)


E funcionou :D Espero que dê tudo certo ai!

3. Mto obrigado, funcionou direitinho!

Lucas
GogetinhaxD

(usa Ubuntu)

Enviado em 03/02/2021 - 11:29h

princknoby escreveu:

Está usando o GNOME?
Dependendo da sua DE o comando fica diferente, vou assumir que você esteja com o GNOME:

Dentro do sublime text vá em TOOLS -> BUILD SYSTEM -> NEW BUILD SYSTEM

Apague tudo que estiver escrito e cole o seguinte código (para compilar e executar a linguagem C)


{
"shell_cmd": "gcc -std=c99 \"${file}\" -o \"${file_path}/${file_base_name}\"",
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c",

"variants":
[
{
"name": "Run",
"shell_cmd": "gnome-terminal -- bash -c \"if [ -f '${file_path}/${file_base_name}' ]; then rm '${file_path}/${file_base_name}'; fi; gcc -std=c99 '${file}' -o '${file_path}'/'${file_base_name}'; '${file_path}'/'${file_base_name}'; read -p '-------------------------------------------\nProcess Exit, Press any key to quit...'\""
}
]
}


Vai salvar (Ctrl + s), e colocar o nome que você quiser, no caso eu coloquei "C-Compiler", em seguida pode fechar o arquivo.
Agora vá novamente em TOOLS -> E agora selecione BUILD -> E selecione o nome que você tinha salvo o arquivo no meu caso -> C-Compiler

Agora é só dentro de algum código usar o atalho CTRL + B e ele vai compilar o arquivo e rodar (vai aparecer umas opções, selecione C-Compiler - run).

E pronto :D


Agora em python 3 (Eu não programo em python (sei o básico do básico do básico), então não sei se isso vai rodar todo código)

Faça o mesmo caminho: TOOLS -> BUILD SYSTEM -> NEW BUILD SYSTEM

Apague o que estiver escrito, e cole o seguinte código:

{
"cmd": ["gnome-terminal -e 'bash -c \"python3 -u $file;echo;echo Press ENTER to exit; read line\"'"],"shell": true
}


Salve e coloque o nome que você quiser, eu coloquei "Python3-Compiler", pode fechar, e novamente a mesma coisa:
Vá novamente em TOOLS -> E agora selecione BUILD -> E selecione o nome que você tinha salvo o arquivo no meu caso -> Python3-Compiler

Vá até um código em python, e compile e rode usando CTRL + B

Eu testei com o seguinte "código" (se é que posso chamar isso de código rsrs):

# Comentário

print('Hello World!')
print('First program for python!')

n1 = int(input('Digite um número: ')) # se não colocar o int vai ser uma string
n2 = int(input('Digite outro número: '))
s = n1 + n2 # se for uma string o '+' vai concatenar as strings

print('Soma: ', s)

# Exemplo string concatenada
pm = input('Primeiro nome: ')
sm = input('Segundo nome: ')

nf = pm + sm # concatena as strings
print('Nome: ', nf)


E funcionou :D Espero que dê tudo certo ai!









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts