28 skills found
PGV-da / PMIt is a software tool designed for creating and editing simulation models in various fields. It provides a user-friendly interface with essential text editing features and additional functionalities tailored for simulation modeling tasks.
luisperezphd / NotepadCloneA Notepad Clone written in C# WinForms
aaronps / EnotepadClone of MS Notepad using Erlang (wxWidgets)
thurrott / NotepadWF CS.NETpad is a basic clone of Microsoft Notepad, written with C#/.NET Framework 4.7x/Windows Forms, that was created by Paul Thurrott
JosanSun / TextEditorThis is a simple textEditor. It tries to imitate Notepad++! If you are interested in it, clone it and complete it with me!
thurrott / NotepadWPF.NETpad is a basic clone of Microsoft Notepad, written with C#/.NET 6.0/Windows Presentation Foundation (WPF), that was created by Paul Thurrott
Ch-Jad / CH JaDi Rajput1# Cmder [](https://gitter.im/cmderdev/cmder?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [](https://ci.appveyor.com/project/MartiUK/cmder) Cmder is a **software package** created out of pure frustration over absence of usable console emulator on Windows. It is based on [ConEmu](https://conemu.github.io/) with *major* config overhaul, comes with a Monokai color scheme, amazing [clink](https://chrisant996.github.io/clink/) (further enhanced by [clink-completions](https://github.com/vladimir-kotikov/clink-completions)) and a custom prompt layout.  ## Why use it The main advantage of Cmder is portability. It is designed to be totally self-contained with no external dependencies, which makes it great for **USB Sticks** or **cloud storage**. So you can carry your console, aliases and binaries (like wget, curl and git) with you anywhere. The Cmder's user interface is also designed to be more eye pleasing, and you can compare the main differences between Cmder and ConEmu [here](https://conemu.github.io/en/cmder.html). ## Installation ### Single User Portable Config 1. Download the [latest release](https://github.com/cmderdev/cmder/releases/) 2. Extract the archive. *Note: This path should not be `C:\Program Files` or anywhere else that would require Administrator access for modifying configuration files* 3. (optional) Place your own executable files into the `%cmder_root%\bin` folder to be injected into your PATH. 4. Run `Cmder.exe` ### Shared Cmder install with Non-Portable Individual User Config 1. Download the [latest release](https://github.com/cmderdev/cmder/releases/) 2. Extract the archive to a shared location. 3. (optional) Place your own executable files and custom app folders into the `%cmder_root%\bin`. See: [bin/README.md](./bin/Readme.md) - This folder to be injected into your PATH by default. - See `/max_depth [1-5]` in 'Command Line Arguments for `init.bat`' table to add subdirectories recursively. 4. (optional) Place your own custom app folders into the `%cmder_root%\opt`. See: [opt/README.md](./opt/Readme.md) - This folder will NOT be injected into your PATH so you have total control of what gets added. 5. Run `Cmder.exe` with `/C` command line argument. Example: `cmder.exe /C %userprofile%\cmder_config` * This will create the following directory structure if it is missing. ``` c:\users\[CH JaDi Rajput]\cmder_config ├───bin ├───config │ └───profile.d └───opt ``` - (optional) Place your own executable files and custom app folders into `%userprofile%\cmder_config\bin`. - This folder to be injected into your PATH by default. - See `/max_depth [1-5]` in 'Command Line Arguments for `init.bat`' table to add subdirectories recursively. - (optional) Place your own custom app folders into the `%user_profile%\cmder_config\opt`. - This folder will NOT be injected into your PATH so you have total control of what gets added. * Both the shared install and the individual user config locations can contain a full set of init and profile.d scripts enabling shared config with user overrides. See below. ## Cmder.exe Command Line Arguments | Argument | Description | | ------------------- | ----------------------------------------------------------------------- | | `/C [user_root_path]` | Individual user Cmder root folder. Example: `%userprofile%\cmder_config` | | `/M` | Use `conemu-%computername%.xml` for ConEmu settings storage instead of `user_conemu.xml` | | `/REGISTER [ALL, USER]` | Register a Windows Shell Menu shortcut. | | `/UNREGISTER [ALL, USER]` | Un-register a Windows Shell Menu shortcut. | | `/SINGLE` | Start Cmder in single mode. | | `/START [start_path]` | Folder path to start in. | | `/TASK [task_name]` | Task to start after launch. | | `/X [ConEmu extras pars]` | Forwards parameters to ConEmu | ## Context Menu Integration So you've experimented with Cmder a little and want to give it a shot in a more permanent home; ### Shortcut to open Cmder in a chosen folder 1. Open a terminal as an Administrator 2. Navigate to the directory you have placed Cmder 3. Execute `.\cmder.exe /REGISTER ALL` _If you get a message "Access Denied" ensure you are executing the command in an **Administrator** prompt._ In a file explorer window right click in or on a directory to see "Cmder Here" in the context menu. ## Keyboard shortcuts ### Tab manipulation * <kbd>Ctrl</kbd> + <kbd>T</kbd> : New tab dialog (maybe you want to open cmd as admin?) * <kbd>Ctrl</kbd> + <kbd>W</kbd> : Close tab * <kbd>Ctrl</kbd> + <kbd>D</kbd> : Close tab (if pressed on empty command) * <kbd>Shift</kbd> + <kbd>Alt</kbd> + <kbd>#Number</kbd> : Fast new tab: <kbd>1</kbd> - CMD, <kbd>2</kbd> - PowerShell * <kbd>Ctrl</kbd> + <kbd>Tab</kbd> : Switch to next tab * <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>Tab</kbd> : Switch to previous tab * <kbd>Ctrl</kbd> + <kbd>#Number</kbd> : Switch to tab #Number * <kbd>Alt</kbd> + <kbd>Enter</kbd>: Fullscreen ### Shell * <kbd>Ctrl</kbd> + <kbd>Alt</kbd> + <kbd>U</kbd> : Traverse up in directory structure (lovely feature!) * <kbd>End</kbd>, <kbd>Home</kbd>, <kbd>Ctrl</kbd> : Traversing text with as usual on Windows * <kbd>Ctrl</kbd> + <kbd>R</kbd> : History search * <kbd>Shift</kbd> + Mouse : Select and copy text from buffer _(Some shortcuts are not yet documented, though they exist - please document them here)_ ## Features ### Access to multiple shells in one window using tabs You can open multiple tabs each containing one of the following shells: | Task | Shell | Description | | ---- | ----- | ----------- | | Cmder | `cmd.exe` | Windows `cmd.exe` shell enhanced with Git, Git aware prompt, Clink (GNU Readline), and Aliases. | | Cmder as Admin | `cmd.exe` | Administrative Windows `cmd.exe` Cmder shell. | | PowerShell | `powershell.exe` | Windows PowerShell enhanced with Git and Git aware prompt . | | PowerShell as Admin | `powershell.exe` | Administrative Windows `powershell.exe` Cmder shell. | | Bash | `bash.exe` | Unix/Linux like bash shell running on Windows. | | Bash as Admin | `bash.exe` | Administrative Unix/Linux like bash shell running on Windows. | | Mintty | `bash.exe` | Unix/Linux like bash shell running on Windows. See below for Mintty configuration differences | | Mintty as Admin | `bash.exe` | Administrative Unix/Linux like bash shell running on Windows. See below for Mintty configuration differences | Cmder, PowerShell, and Bash tabs all run on top of the Windows Console API and work as you might expect in Cmder with access to use ConEmu's color schemes, key bindings and other settings defined in the ConEmu Settings dialog. ⚠ *NOTE:* Only the full edition of Cmder comes with a pre-installed bash, using a vendored [git-for-windows](https://gitforwindows.org/) installation. The pre-configured Bash tabs may not work on Cmder mini edition without additional configuration. You may however, choose to use an external installation of bash, such as Microsoft's [Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install-win10) (called WSL) or the [Cygwin](https://cygwin.com/) project which provides POSIX support on windows. ⚠ *NOTE:* Mintty tabs use a program called 'mintty' as the terminal emulator that is not based on the Windows Console API, rather it's rendered graphically by ConEmu. Mintty differs from the other tabs in that it supports xterm/xterm-256color TERM types, and does not work with ConEmu settings like color schemes and key bindings. As such, some differences in functionality are to be expected, such as Cmder not being able to apply a system-wide configuration to it. As a result mintty specific config is done via the `[%USERPROFILE%|$HOME]/.minttyrc` file. You may read more about Mintty and its config file [here](https://github.com/mintty/mintty). An example of setting Cmder portable terminal colors for mintty: From a bash/mintty shell: ``` cd $CMDER_ROOT/vendor git clone https://github.com/karlin/mintty-colors-solarized.git cd mintty-colors-solarized/ echo source \$CMDER_ROOT/vendor/mintty-colors-solarized/mintty-solarized-dark.sh>>$CMDER_ROOT/config/user_profile.sh ``` You may find some Monokai color schemes for mintty to match Cmder [here](https://github.com/oumu/mintty-color-schemes/blob/master/base16-monokai-mod.minttyrc). ### Changing Cmder Default `cmd.exe` Prompt Config File The default Cmder shell `cmd::Cmder` prompt is customized using `Clink` and is configured by editing a config file that exists in one of two locations: - Single User Portable Config `%CMDER_ROOT%\config\cmder_prompt_config.lua` - Shared Cmder install with Non-Portable Individual User Config `%CMDER_USER_CONFIG%\cmder_prompt_config.lua` If your Cmder setup does not have this file create it from `%CMDER_ROOT%\vendor\cmder_prompt_config.lua.default` Customizations include: - Colors. - Single/Multi-line. - Full path/Folder only. - `[user]@[host]` to the beginning of the prompt. - `~` for home directory. - `λ` symbol Documentation is in the file for each setting. ### Changing Cmder Default `cmd.exe` Shell Startup Behaviour Using Task Arguments 1. Press <kbd>Win</kbd> + <kbd>Alt</kbd> + <kbd>T</kbd> 1. Click either: * `1. {cmd::Cmder as Admin}` * `2. {cmd::Cmder}` 1. Add command line arguments where specified below: *Note: Pay attention to the quotes!* ``` cmd /s /k ""%ConEmuDir%\..\init.bat" [ADD ARGS HERE]" ``` ##### Command Line Arguments for `init.bat` | Argument | Description | Default | | ----------------------------- | ---------------------------------------------------------------------------------------------- | ------------------------------------- | | `/c [user cmder root]` | Enables user bin and config folders for 'Cmder as admin' sessions due to non-shared environment. | not set | | `/d` | Enables debug output. | not set | | `/f` | Enables Cmder Fast Init Mode. This disables some features, see pull request [#1492](https://github.com/cmderdev/cmder/pull/1942) for more details. | not set | | `/t` | Enables Cmder Timed Init Mode. This displays the time taken run init scripts | not set | | `/git_install_root [file path]` | User specified Git installation root path. | `%CMDER_ROOT%\vendor\Git-for-Windows` | | `/home [home folder]` | User specified folder path to set `%HOME%` environment variable. | `%userprofile%` | | `/max_depth [1-5]` | Define max recurse depth when adding to the path for `%cmder_root%\bin` and `%cmder_user_bin%` | 1 | | `/nix_tools [0-2]` | Define how `*nix` tools are added to the path. Prefer Windows Tools: 1, Prefer *nix Tools: 2, No `/usr/bin` in `%PATH%`: 0 | 1 | | `/svn_ssh [path to ssh.exe]` | Define `%SVN_SSH%` so we can use git svn with ssh svn repositories. | `%GIT_INSTALL_ROOT%\bin\ssh.exe` | | `/user_aliases [file path]` | File path pointing to user aliases. | `%CMDER_ROOT%\config\user_aliases.cmd` | | `/v` | Enables verbose output. | not set | | (custom arguments) | User defined arguments processed by `cexec`. Type `cexec /?` for more usage. | not set | ### Cmder Shell User Config Single user portable configuration is possible using the cmder specific shell config files. Edit the below files to add your own configuration: | Shell | Cmder Portable User Config | | ------------- | ----------------------------------------- | | Cmder | `%CMDER_ROOT%\config\user_profile.cmd` | | PowerShell | `$ENV:CMDER_ROOT\config\user_profile.ps1` | | Bash/Mintty | `$CMDER_ROOT/config/user_profile.sh` | Note: Bash and Mintty sessions will also source the `$HOME/.bashrc` file if it exists after it sources `$CMDER_ROOT/config/user_profile.sh`. You can write `*.cmd|*.bat`, `*.ps1`, and `*.sh` scripts and just drop them in the `%CMDER_ROOT%\config\profile.d` folder to add startup config to Cmder. | Shell | Cmder `Profile.d` Scripts | | ------------- | -------------------------------------------------- | | Cmder | `%CMDER_ROOT%\config\profile.d\*.bat and *.cmd` | | PowerShell | `$ENV:CMDER_ROOT\config\profile.d\*.ps1` | | Bash/Mintty | `$CMDER_ROOT/config/profile.d/*.sh` | #### Git Status Opt-Out To disable Cmder prompt git status globally add the following to `~/.gitconfig` or locally for a single repo `[repo]/.git/config` and start a new session. *Note: This configuration is not portable* ``` [cmder] status = false # Opt out of Git status for 'ALL' Cmder supported shells. cmdstatus = false # Opt out of Git status for 'Cmd.exe' shells. psstatus = false # Opt out of Git status for 'Powershell.exe and 'Pwsh.exe' shells. shstatus = false # Opt out of Git status for 'bash.exe' shells. ``` ### Aliases #### Cmder(`Cmd.exe`) Aliases You can define simple aliases for `cmd.exe` sessions with a command like `alias name=command`. Cmd.exe aliases support optional parameters through the `$1-9` or the `$*` special characters so the alias `vi=vim.exe $*` typed as `vi [filename]` will open `[filename]` in `vim.exe`. Cmd.exe aliases can also be more complex. See: [DOSKEY.EXE documentation](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/doskey) for additional details on complex aliases/macros for `cmd.exe` Aliases defined using the `alias.bat` command will automatically be saved in the `%CMDER_ROOT%\config\user_aliases.cmd` file To make an alias and/or any other profile settings permanent add it to one of the following: Note: These are loaded in this order by `$CMDER_ROOT/vendor/init.bat`. Anything stored in `%CMDER_ROOT%` will be a portable setting and will follow cmder to another machine. * `%CMDER_ROOT%\config\profile.d\*.cmd` and `\*.bat` * `%CMDER_ROOT%\config\user_aliases.cmd` * `%CMDER_ROOT%\config\user_profile.cmd` #### Bash.exe|Mintty.exe Aliases Bash shells support simple and complex aliases with optional parameters natively so they work a little different. Typing `alias name=command` will create an alias only for the current running session. To make an alias and/or any other profile settings permanent add it to one of the following: Note: These are loaded in this order by `$CMDER_ROOT/vendor/git-for-windows/etc/profile.d/cmder.sh`. Anything stored in `$CMDER_ROOT` will be a portable setting and will follow cmder to another machine. * `$CMDER_ROOT/config/profile.d/*.sh` * `$CMDER_ROOT/config/user_profile.sh` * `$HOME/.bashrc` If you add bash aliases to `$CMDER_ROOT/config/user_profile.sh` they will be portable and follow your Cmder folder if you copy it to another machine. `$HOME/.bashrc` defined aliases are not portable. #### PowerShell.exe Aliases PowerShell has native simple alias support, for example `[new-alias | set-alias] alias command`, so complex aliases with optional parameters are not supported in PowerShell sessions. Type `get-help [new-alias|set-alias] -full` for help on PowerShell aliases. To make an alias and/or any other profile settings permanent add it to one of the following: Note: These are loaded in this order by `$ENV:CMDER_ROOT\vendor\user_profile.ps1`. Anything stored in `$ENV:CMDER_ROOT` will be a portable setting and will follow cmder to another machine. * `$ENV:CMDER_ROOT\config\profile.d\*.ps1` * `$ENV:CMDER_ROOT\config\user_profile.ps1` ### SSH Agent To start the vendored SSH agent simply call `start-ssh-agent`, which is in the `vendor/git-for-windows/cmd` folder. If you want to run SSH agent on startup, include the line `@call "%GIT_INSTALL_ROOT%/cmd/start-ssh-agent.cmd"` in `%CMDER_ROOT%/config/user_profile.cmd` (usually just uncomment it). ### Vendored Git Cmder is by default shipped with a vendored Git installation. On each instance of launching Cmder, an attempt is made to locate any other user provided Git binaries. Upon finding a `git.exe` binary, Cmder further compares its version against the vendored one _by executing_ it. The vendored `git.exe` binary is _only_ used when it is more recent than the user-installed one. You may use your favorite version of Git by including its path in the `%PATH%` environment variable. Moreover, the **Mini** edition of Cmder (found on the [downloads page](https://github.com/cmderdev/cmder/releases)) excludes any vendored Git binaries. ### Using external Cygwin/Babun, MSys2, WSL, or Git for Windows SDK with Cmder. You may run bash (the default shell used on Linux, macOS and GNU/Hurd) externally on Cmder, using the following instructions: 1. Setup a new task by pressing <kbd>Win</kbd> +<kbd>Alt</kbd> + <kbd>T</kbd>. 1. Click the `+` button to add a task. 1. Name the new task in the top text box. 1. Provide task parameters, this is optional. 1. Add `cmd /c "[path_to_external_env]\bin\bash --login -i" -new_console` to the `Commands` text box. **Recommended Optional Steps:** Copy the `vendor/cmder_exinit` file to the Cygwin/Babun, MSys2, or Git for Windows SDK environments `/etc/profile.d/` folder to use portable settings in the `$CMDER_ROOT/config` folder. Note: MinGW could work if the init scripts include `profile.d` but this has not been tested. The destination file extension depends on the shell you use in that environment. For example: * bash - Copy to `/etc/profile.d/cmder_exinit.sh` * zsh - Copy to `/etc/profile.d/cmder_exinit.zsh` Uncomment and edit the below line in the script to use Cmder config even when launched from outside Cmder. ``` # CMDER_ROOT=${USERPROFILE}/cmder # This is not required if launched from Cmder. ``` ### Customizing user sessions using `init.bat` custom arguments. You can pass custom arguments to `init.bat` and use `cexec.cmd` in your `user_profile.cmd` to evaluate these arguments then execute commands based on a particular flag being detected or not. `init.bat` creates two shortcuts for using `cexec.cmd` in your profile scripts. #### `%ccall%` - Evaluates flags, runs commands if found, and returns to the calling script and continues. ``` ccall=call C:\Users\user\cmderdev\vendor\bin\cexec.cmd ``` Example: `%ccall% /startnotepad start notepad.exe` #### `%cexec%` - Evaluates flags, runs commands if found, and does not return to the calling script. ``` cexec=C:\Users\user\cmderdev\vendor\bin\cexec.cmd ``` Example: `%cexec% /startnotepad start notepad.exe` It is useful when you have multiple tasks to execute `cmder` and need it to initialize the session differently depending on the task chosen. To conditionally start `notepad.exe` when you start a specific `cmder` task: * Press <kbd>win</kbd>+<kbd>alt</kbd>+<kbd>t</kbd> * Click `+` to add a new task. * Add the below to the `Commands` block: ```batch cmd.exe /k ""%ConEmuDir%\..\init.bat" /startnotepad" ``` * Add the below to your `%cmder_root%\config\user_profile.cmd` ```batch %ccall% "/startNotepad" "start" "notepad.exe"` ``` To see detailed usage of `cexec`, type `cexec /?` in cmder. ### Integrating Cmder with [Hyper](https://github.com/zeit/hyper), [Microsoft VS Code](https://code.visualstudio.com/), and your favorite IDEs Cmder by default comes with a vendored ConEmu installation as the underlying terminal emulator, as stated [here](https://conemu.github.io/en/cmder.html). However, Cmder can in fact run in a variety of other terminal emulators, and even integrated IDEs. Assuming you have the latest version of Cmder, follow the following instructions to get Cmder working with your own terminal emulator. For instructions on how to integrate Cmder with your IDE, please read our [Wiki section](https://github.com/cmderdev/cmder/wiki#cmder-integration). ## Upgrading The process of upgrading Cmder depends on the version/build you are currently running. If you have a `[cmder_root]/config/user[-|_]conemu.xml`, you are running a newer version of Cmder, follow the below process: 1. Exit all Cmder sessions and relaunch `[cmder_root]/cmder.exe`, this backs up your existing `[cmder_root]/vendor/conemu-maximus5/conemu.xml` to `[cmder_root]/config/user[-|_]conemu.xml`. * The `[cmder_root]/config/user[-|_]conemu.xml` contains any custom settings you have made using the 'Setup Tasks' settings dialog. 2. Exit all Cmder sessions and backup any files you have manually edited under `[cmder_root]/vendor`. * Editing files under `[cmder_root]/vendor` is not recommended since you will need to re-apply these changes after any upgrade. All user customizations should go in `[cmder_root]/config` folder. 3. Delete the `[cmder_root]/vendor` folder. 4. Extract the new `cmder.zip` or `cmder_mini.zip` into `[cmder_root]/` overwriting all files when prompted. If you do not have a `[cmder_root]/config/user[-|_]conemu.xml`, you are running an older version of cmder, follow the below process: 1. Exit all Cmder sessions and backup `[cmder_root]/vendor/conemu-maximus5/conemu.xml` to `[cmder_root]/config/user[-|_]conemu.xml`. 2. Backup any files you have manually edited under `[cmder_root]/vendor`. * Editing files under `[cmder_root]/vendor` is not recommended since you will need to re-apply these changes after any upgrade. All user customizations should go in `[cmder_root]/config` folder. 3. Delete the `[cmder_root]/vendor` folder. 4. Extract the new `cmder.zip` or `cmder_mini.zip` into `[cmder_root]/` overwriting all files when prompted. ## Current development builds You can download builds of the current development branch by going to AppVeyor via the following link: [](https://ci.appveyor.com/project/MartiUK/cmder/branch/master/artifacts) ## License All software included is bundled with own license The MIT License (MIT) Copyright (c) 2016 Samuel Vasko Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
fireball2018 / Notepapera piece of paper in the cloud, notepad.cc clone by gae
profdiegoaugusto / Github# Git/Github Created: February 25, 2022 8:13 AM Tags: desenvolvimento, git, github, jogos, lab, mobile, web  **Git** é um *Sistema de Controle de Versão* distribuído gratuito e de código aberto projetado para lidar com tudo, desde projetos pequenos a muito grandes com velocidade e eficiência. Na Engenharia de Software, Controle de Versão é um componente do Gerenciamento de Configurações, também conhecido como: controle de revisão, controle de origem ou gerenciamento de código-fonte. Gerenciamento de versões, envolve manter o acompanhamento de várias versões de componentes do sistema e assegurar que as mudanças nos componentes, realizadas por diferentes desenvolvedores, não interfiram umas nas outras. O **GitHub** é uma plataforma de hospedagem de código para controle de versão e colaboração. Ele permite que você e outras pessoas trabalhem juntos em projetos à partir de qualquer lugar. # Sumário # Se prepare para a aula Vamos reservar alguns minutos para configurar o seu ambiente de trabalho local. ## Passo 1: Crie a sua conta no GitHub 1. Acesse [GitHub.com](http://github.com/) e clique em **Sign up**; 2. Escolha a conta gratuita; 3. Você receberá um e-mail de verificação no endereço fornecido; 4. Clique no link para concluir o processo de verificação. <aside> 💡 O GitHub foi projetado para ser executado nas versões atuais de todos os principais navegadores. Em particular, se você usa o Internet Explorer (IE) da Microsoft, deve estar usando a versão mais recente. Dê uma olhada na lista de [navegadores suportados.](https://docs.github.com/en/get-started/using-github/supported-browsers) </aside> ## Passo 2: Instale o Git No coração do GitHub está o *Sistema de Controle de Versão* de código aberto chamado Git. O Git é responsável por tudo que acontece localmente no seu computador relacionado ao GitHub. Vamos verificar se o Git já não está instalado em sua máquina. Abra o **Terminal** se estiver em um Mac ou **PowerShell** se estiver em uma máquina Windows e digite: ```bash git --version ``` Após executar o código no Terminal, você deverá ver algo do tipo: ```bash git version 2.22.0.windows.1 ``` ### Baixe e Instale o Git Caso não tenha o Git instalado, faça download e instale a versão mais recente do Git. neste link: [https://git-scm.com/downloads](https://git-scm.com/downloads) - Se você estiver trabalhando no Windows, é recomendado usar o Git Bash que já vem instalado com o pacote Git; - Se você estiver trabalhando em um Mac ou outro sistema baseado em Unix, você pode usar o aplicativo Terminal integrado. ### Configure o seu nome de usuário no Git O Git usa um nome de usuário para associar os commits a uma identidade, ou seja, toda vez que você enviar o seu código para o GitHub esse nome de usuário do git será usado para te identificar como autor do código enviado dentro do repositório no GitHub. <aside> 💡 O nome de usuário do Git é diferente do nome de usuário do GitHub. </aside> Para configurar o seu nome de usuário do Git para todos os seus repositórios no computador, faça: 1. Abra o Git Bash. 2. Defina um nome de usuário do Git ```bash git config --global user.name "Ada Lovelace" ``` 1. Confirme que você configurou o nome de usuário corretamente no Git, digitando: ```bash git config --global user.name > Ada Lovelace ``` ## Passo 3: Clone um Repositório Após instalar e configurar o Git vamos testar a instalação, para isto, experimente clonar um repositório do GitHub para sua máquina. Clonar um repositório significa criar uma cópia local no seu computador dos arquivos que estão armazenados em um repositório do GitHub. Abra o **Terminal** se estiver em um Mac ou **PowerShell** se estiver em uma máquina Windows e digite: ```bash git clone https://github.com/githubschool/scratch ``` Se tudo estiver funcionando corretamente, os arquivos do repositório *scratch* pertencentes ao usuário *githubschool* do Github, serão baixados para a sua máquina, e, você verá a seguinte mensagem no terminal: ```bash Cloning into 'scratch'... remote: Enumerating objects: 9, done. remote: Total 9 (delta 0), reused 0 (delta 0), pack-reused 9 Unpacking objects: 100% (9/9), done. ``` ## Passo 4: Prepare o seu Editor de Texto Para esta aula, usaremos um editor de texto básico para interagir com nosso código, e, esteja pronto para trabalhar com linha de comando usando o terminal. Você pode usar quase qualquer editor de texto, mas terá mais sucesso se usar qualquer um dos seguintes editores: - Visual Studio Code: [https://code.visualstudio.com/download](https://code.visualstudio.com/download) - Atom: [https://atom.io/](https://atom.io/) - Sublime: [https://www.sublimetext.com/3](https://www.sublimetext.com/3) - Notepad++: [https://notepad-plus-plus.org/downloads/](https://notepad-plus-plus.org/downloads/) - Notepad, Vi or Vim, GitPad. <aside> 💡 Use o **Visual Studio Code** 😉 </aside> Após instalar um editor de texto, verifique se você pode abri-lo à partir da linha de comando no terminal. Por exemplo, se tudo estiver instalado corretamente, se você digitar o comando abaixo no **Terminal** ou **PowerShell**, o *Visual Studio Code* vai abrir. ```bash code . ``` # Repositórios Um repositório contém todos os arquivos do seu projeto e o histórico de revisão de cada arquivo. Você pode discutir e gerenciar o trabalho do projeto dentro do repositório. Geralmente são usados para organizar um único projeto e podem conter: pastas e arquivos, imagens, vídeos, planilhas e conjuntos de dados. Os repositórios incluem um arquivo README escritos na linguagem de marcação Markdown, com informações sobre o seu projeto, bem como, um arquivo indicando qual é a licença do seu projeto. <aside> 💡 Um repositório pode ser um lugar onde você armazena ideias, recursos ou até mesmo compartilha e discute coisas com outras pessoas </aside> ## Crie um Repositório Git local Abra o **Terminal** se estiver em um Mac ou **Git Bash** se estiver em uma máquina Windows. Usando o comando `cd` (*change directory*) navegue para o diretório onde você deseja colocar a pasta do seu projeto. Por exemplo, digite o comando abaixo, caso queira colocar a pasta do seu projeto na Área de Trabalho do Windows. ```bash cd ~/Desktop ``` Use o comando `mkdir` (*make directory*) para criar a pasta do seu projeto através da linha de comando. ```bash mkdir sistema-erp ``` Usando novamente o comando `cd` (*change directory*), entre na pasta *sistema-erp* que acabamos de criar para nosso projeto. ```bash cd sistema-erp ``` Execute o comando `git init` para inicializar um novo repositório git no diretório raiz da pasta *sistema-erp.* Após executar o comando você vai ver a seguinte mensagem: *"Initialized empty Git repository in ...”*; no terminal. ```bash git init ``` ### Adicione um Novo Arquivo no Repositório Vamos adicionar um novo arquivo para nosso repositório usando comando `touch`. ```bash touch arquivo.txt ``` <aside> 💡 Esse comando não está disponível no **Prompt de Comand** ou **PowerShell** em ambientes Windows, por isso, **use o Git Bash** que já vem instalado com o pacote Git. </aside> Depois de criar o novo arquivo, vamos usar o comando `git status` para ver quais arquivos estão sendo monitorados pelo Git em nosso repositório. ```bash git status ``` ```bash On branch master No commits yet Untracked files: (use "git add <file>..." to include in what will be committed) **arquivo.txt** nothing added to commit but untracked files present (use "git add" to track) ``` Após executar o comando `git status` você vai ler na tela uma mensagem dizendo que o Git viu que você criou o arquivo chamado **`arquivo.txt`** , porém, a menos que você use o comando ****`git add` ele será ignorado pelo git. Execute o comando abaixo para que o git monitore o arquivo que criamos: ```bash git add arquivo.txt ``` Para adicionar todos os arquivos de uma pasta ao git, use o **ponto final** ao invés de informar o nome do arquivo. ```bash git add . ``` <aside> 💡 Essa ação será necessária sempre que qualquer arquivo for alterado ou acrescentado na pasta do seu proejto. Então, quando estiver pronto para salvar uma cópia do estado atual do projeto, você prepara as alterações com o comando `git add` , em seguida, você faz commit no histórico do projeto com `git commit` </aside> ### Faça um commit > Você pode salvar pequenos grupos de mudanças significativas como commits. > Vamos criar nosso commit, executando o comando abaixo: ```bash git commit -m "Primeiro commit" ``` Após executar o terminal irá mostrar as seguintes mensagens, com a quantidade de arquivos alterados, e, quantas inclusões e exclusões foram feitas. ```bash [master (root-commit) f1d0d18] primeiro commit 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 arquivo.txt ``` Assim como salvamos um arquivo que foi editado, um commit registra alterações em um ou mais arquivos. O Git atribui a cada commit um ID exclusivo, denominado SHA ou hash, que identifica: - Cada uma das alterações feitas; - O momento em que as alterações foram feitas; - O autor das alterações. Ao fazer um commit, você deve incluir uma mensagem que descreva brevemente as alterações. A mensagem no final do commit deve ser algo relacionado ao conteúdo do commit, por exemplo: uma nova funcionalidade, uma correção de bug, correção de erros de digitação. <aside> ⚠️ **Não coloque uma mensagem sem significado**, tais como: "asdfadsf" ou "foobar". </aside> ## Crie um Repositório no Github Acesse [https://docs.github.com/pt/get-started/quickstart/hello-world#creating-a-repository](https://docs.github.com/pt/get-started/quickstart/hello-world#creating-a-repository) e siga o passo a passo para criar um novo repositório chamado: **gestao-empresarial**; na sua conta do GitHub. <aside> 💡 Os nomes dos repositórios devem ser escritos em letra minúscula (caixa baixa), usando traço (-) para separar espaços em brancos. Não utilize acentos nem caracteres especiais nos nomes dos seus respositórios. </aside> Após criar um repositório no Github, você pode: - Clonar o repositório para sua máquina, ou seja, fazer uma cópia local; usando o comando `git clone` - Enviar um repositório git local para o github, através da linha de comando. ## Adicione seu Repositório Local no Github Para adicionar o repositório git que criamos em nossa máquina no github, execute os comandos abaixo: ```bash git remote add origin https://github.com/<NOME_DE_USUÁRIO>/gestao-empresarial.git git branch -M main git push -u origin main ``` <aside> ⚠️ Não esqueça de substituir <NOME_DE_USUÁRIO> pelo seu nome de usuário do GitHub </aside>
timsneath / Notepad3WPF-based Notepad clone, written to exercise the AvalonEdit text editor component
asadkhan-786-gb / Notepad Clone Using JavaBuilding your own Notepad Clone using Java Programming
Air16 / NotepadExWindows Notepad clone with unlimited undo/redo, auto-backup and optional dark theme
sina-yeganeh / Notepad CloneA notepad clone based on Electron js library
niravjdn / Notepad.cc CloneNo description available
rudymohammadbali / WinpadMade a clone of microsoft windows notepad using customtkinter
Haardispro / HaardcodeA scuffed notepad clone made in Python
tomitokko / Notepad Clone With PythonNo description available
npp-community / Notepad Plus Svn MirrorMirror of Notepad++'s SVN trunk branch updated every 2 hours by cron. Please see the Wiki tab above for IMPORTANT information PRIOR to cloning or forking.
MayorFalomo / Google KeepA Google Keep(Notepad) Clone: My Full Stack project where users can write notes, draw using canvas, language translation, Set remainders for your notes(using CRON jobs) and get notified , multi-select notes, Check the ReadMe for more functionalities. So please Star or Watch if you liked it
wesmar / NotepadHigh-performance Notepad clone written in pure Assembly (MASM) for Windows 11. Bypasses C Runtime (CRT) to interact directly with Win32 API. Features x64/x86 support, manual memory management, and low-level message loops. A perfect reference for systems programmers exploring the PE format and bare-metal Windows development.