GithubHelp home page GithubHelp logo

paralax / cmdtypist Goto Github PK

View Code? Open in Web Editor NEW

This project forked from n05la3/cmdtypist

0.0 3.0 0.0 1.11 MB

Highly configurable command line typing tutor designed for linux distros written in C. It is fast and efficient and with a good progress report display. Become a pro in typing with the DVORAK and QWERTY keyboards.

License: GNU General Public License v3.0

C 98.08% Shell 1.92%

cmdtypist's Introduction

CMDTYPIST -- Where Programmers Type

By Chiatiah Calson

About

Cmdtypist is a programmer oriented typing tutor written in C, designed to work on the gnome-terminal, xterm and uxterm and other consoles. It consists true programming lessons, so the user can type and learn at the same time.

about cmdtypist

DOWNLOAD

You can get cmdtypist by cloning the repo from github

	git clone https://github.com/Noslac/cmd_typist

INSTALLATION

Open a terminal and navigate to the directory containing cmdtypist and all it's files. Navigate to cmdtypist directory called installation and run

				./install.sh 

to install cmdtypist

RUNNING

If install.sh exited with a success message, then you have installed cmdtypist, you can then run the command

		cmdtypist arg1 arg2 arg3 ...

from any directory. arg1, arg2,... are valid cmdtypist arguments, to know all valid arguments, run the cmdtypist help command or consult the help file which comes with the program. If you are a first time user, after installing cmdtypist, you must run the command cmdtypist mkuser "username" to create a user called username.

CMDTYPIST ARGUMENTS

cmdtypist commands are entered at the terminal with the exception of select "lesson-number" (lesson-number is an int corresponding to a valid lesson number) which is entered at the cmdtypist prompt prior to some other cmdtypist command entered at the terminal.

CMDTYPIST Commands Description
cmtypist --help Displays help menu
cmtypist Displays lessons and opens the cmdtypist prompt
cmdtypist mkuser "username" Creates a new user called username
cmtypist ls Lists available lessons, use <select "lesson-number"> to select a lesson
cmtypist man Displays cmdtypist readme file
cmdtypist select "lesson number" Used to select a lesson directly from terminal
cmtypist atv Use this command if backspace is not working properly
cmdtypist sound --on Activates error beep sound
cmdtypist sound --off Deacativates beep sound
cmdtypist /myown Changes the lessons to user's lesson copied into myown.txt
cmtypist cchl Exits from user's lesson mode
cmdtypist mkstd Lessons appear as they are in lesson file
cmdtypist mkrand Lessons appear randomly
cmdtypist chblock "lesson number" changes number of lines per sesson to an int 'lesson number'
cmdtypist reset Does a soft reset
cmdtypist reset raw Does a hard reset, resetting to default

Consult help file for more details of these commands

UNINSTALL

If you are having problems with cmdtypist configurations, you can run the command

	cmdtypist reset raw

to reset settings to default. But if you want to permanently uninstall cmdtypist, proceed below.

To uninstall cmdtypist, open a terminal and cd into directory containing the unintall script by running

	cd $HOME/cmdtypist/uninstall/

finally, run

	./uninstall

to completely remove cmdtypist and associated files.

Features of cmtypist

General Features

Extremely fast, never again type faster than your type tutor!!!

CMDTYPIST comes bundled with a good number of lessons for both programmers and non-programmers. The non programmer lessons help train the user on basic typing techiques and the programmer lessons help both the programmer and non programmers to become better at typing.

An accurate speed algorithm in character per minute (CPM) and an approximate in word per minute WPM (accuracy -+0.35)

Terminal is manipulated to print green a correct character and red a wrong character. This makes cmdtypist command line tutor very appealing. The user easily knows where he has gone wrong and can undo all errors.

Keeps a record of the number of wrong and correct characters; cmdtypist is able tracks the number of wrong characters and displays at the end of each session.

Creates a text file to keep a account of the user speed in details(date, numer of errors, speed in CPM and WPM and time elapsed) for each session. Hence, the user can always keep track of his typing speed from the very first day.

NOTE: cmdtypist makes a periodic check once a month, on the size of the speed.info file, and when it has reached a certain length, on a confirmed prompt will automatically rename or delete the the existing file and hen create a new one.

CMDTYPIST equally contains a "myown.txt" file, where a user can input an optional text he wants to type. With myown.txt, the user is limited to typing only in standard mode.

Command Line Features

The user can choose to type in random mode where a random block is each session is chosen from selected lesson.

And in standard mode, the user types chronologically as the lesson is in the lesson file.

The user can chose to modify any lesson in the lesson file easily.

For a user who will not love to modify the lesson file, a my_own.txt file is available for the user to paste his text file he wants to type.

NOTE: Text file should contain only ascii 7 bits characters. For this reason, user text may some times look absurd when contains extended ascii characters since program has a function to ignore such characters.

User also can choose to receive a beep for any wrong character typed (may not work on all terminals)

Program has the ability to remember all past settings.

Terminal is manipulated so a user can erase characters right to the beginning of the session line(timing reset) For each wrong character erased, number of errors is decremented by one.

User session timing starts only when he types a first character (wrong or correct)

If the user erases to the beginning of the session, time is reset to zero and starts only as described above.

The last line of each lesson session is marked blue, so user is aware and can take time to review speed details befor estarting the following lesson.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

cmdtypist's People

Contributors

n05la3 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.