Work in the Command Line (Terminal)
¶ Rationale
Quick definition:
The command line is a text-based way of interacting with your computer(DHRI). There are lots of good reasons to learn to work in the Terminal (or command line or command-line interface) of your operating system. One is that it allows you to bypass the graphical user interface (GUI) of your computer. Another (according to a researcher quoted in Nature 590) is that you will feel like a
very competent […] cool nerd.
The main reason we require LEMDO users to work in the Terminal is that our Subversion repository can be accessed only via the Terminal. All of the Subversion (SVN) commands
are written in the Terminal. Detailed steps for key commands are in documentation
pages linked to from the
Further Readingsection of this page.
We recommend keeping this documentation page bookmarked until you are comfortable
working in the command line and until you understand the difference between the generic
Terminal commands (cd, mkdir, cd ../) and the specific Subversion commands.
¶ Practice: Open Your Terminal
All operating systems have a command-line interface (Terminal). Before you can work
in it, you need to find it.
Mac: Press Cmd (⌘)+Space, then type
Terminal(without quotation marks) and press Return
Windows: Press Windows key+r, then type
cmd(without quotation marks) and press Enter
Linux: Press Ctrl+Alt+T
¶ Terms and Abbreviations for Working in Terminal
If you are new to working in Terminal, it is helpful to learn some of the terms and
abbreviations that we use when talking about Terminal.
Directory: Another way to refer to folders.
Tree: Refers to the structure of folders and files that we are working in. Folder structures
mimic trees in that there is one main folder (the trunk) that all other folders
livein (branch out of). Everything in our LEMDO repository branches off from the main lemdo directory.
Parent: A directory that contains another directory. It is one level closer to the
trunk of the tree(the lemdo directory) in our LEMDO repository structure. For example, in this structure: lemdo/data/texts, data is the parent of texts.
Child: A directory immediately contained by another directory. It is one level further
from the lemdo directory in our repository structure. For example, in this structure: lemdo/data/texts, texts is the child of data.
Descendant: A directory that is contained by another, but is not its immediate child. For example,
in this structure: lemdo/data/texts, texts is the descendant of lemdo.
Up: Moving
backtowards the main directory (in our case, the lemdo directory) from a child or descendant folder.
Down: Moving into descendant directories from the main directory.
Highest level: The main directory of the repository. For LEMDO, the highest level is the lemdo directory.
Lowest level: The directory that is the parent of whichever file you have been working on. It
is the furthest relevant directory from the main directory. For example, if you were
working on emdH5_FM.xml, the pathway to that file is lemdo/data/texts/H5/main/emdH5_FM.xml. The highest level would be lemdo and the lowest level would be main.
mkdir:
mkdir
is a Terminal command that stands for “make directory”. This command is how you will
create new directories via your command line. It is functionally the same as creating
a new folder in your computerʼs file explorer.
cd:
cd
is a Terminal command that stands for “change directory”. This command is how you
will move between levels in the lemdo tree.¶ Terminal Commands: Reference Table
Action | How to do it |
Create a new directory |
mkdir [folder name]
|
Move into a directory |
cd [folder name]
|
List contents of the current directory |
Linux & Mac:
ls
Windows:
dir
|
Find out where you are in your folder tree |
Linux & Mac:
pwd (print working directory)Windows:
cd (although the Terminal in Windows already shows you where you are) |
Move back up the tree (i.e. go to the parent folder) |
cd ../
|
Move two or more levels back up the tree |
cd ../../ (add as many ../ as you need) |
Move up the tree and then down into another folder |
cd ../[folder name]
1
|
¶ Tips for Working in Terminal
Commands in the command line must be typed precisely with the correct capitalization.
For example, MyFile.odt is a different file from myfile.odt.
You can recall previous commands, which is useful if you need to re-execute a recent
command or make a small modification to a recent command. Use the arrow keys on your
keyboard to recall previous commands. Press the up arrow key (↑) to reproduce the immediately previous command. Press the up arrow key again as many
times as you need to find an earlier command. Press the down arrow key (↓) to move forward through your previous commands.
¶ Other Resources
For a free online tutorial, see
Introduction to the Command Line,from the Digital Humanities Research Institute at CUNY.
See also Jeffrey M. Perkel,
Five reasons why researchers should learn to love the command line,Nature 590 (2021), 173-174, https://doi.org/10.1038/d41586-021-00263-0.
¶ Further Reading
Install a Subversion Client: Mac(for those working on Mac computers)
Install a Subversion Client: Windows(for those working on Windows computers)
Install a Subversion Client: Linux(for those working on Linux computers)
Notes
1.For example, if you are in lemdo/data/texts/FV and you want to go to another play, you would type
cd ../FBFB
.↑Prosopography
Janelle Jenstad
Janelle Jenstad is a Professor of English at the University of
Victoria, Director of The Map
of Early Modern London, and Director of Linked Early Modern Drama
Online. With Jennifer Roberts-Smith and Mark Kaethler, she
co-edited Shakespeare’s Language in Digital Media: Old
Words, New Tools (Routledge). She has edited John Stow’s
A Survey of London (1598 text) for MoEML
and is currently editing The Merchant of Venice
(with Stephen Wittek) and Heywood’s 2 If You Know Not
Me You Know Nobody for DRE. Her articles have appeared in
Digital Humanities Quarterly, Elizabethan Theatre, Early Modern
Literary Studies, Shakespeare
Bulletin, Renaissance and
Reformation, and The Journal of Medieval
and Early Modern Studies. She contributed chapters to Approaches to Teaching Othello (MLA); Teaching Early Modern Literature from the Archives
(MLA); Institutional Culture in Early Modern
England (Brill); Shakespeare, Language, and
the Stage (Arden); Performing Maternity in
Early Modern England (Ashgate); New
Directions in the Geohumanities (Routledge); Early Modern Studies and the Digital Turn (Iter);
Placing Names: Enriching and Integrating
Gazetteers (Indiana); Making Things and
Drawing Boundaries (Minnesota); Rethinking
Shakespeare Source Study: Audiences, Authors, and Digital
Technologies (Routledge); and Civic
Performance: Pageantry and Entertainments in Early Modern
London (Routledge). For more details, see janellejenstad.com.
Joey Takeda
Joey Takeda is LEMDO’s Consulting Programmer and Designer, a role he
assumed in 2020 after three years as the Lead Developer on
LEMDO.
Mahayla Galliford
Research assistant, remediator, encoder, 2021–present. Mahayla Galliford is a fourth-year
student in the English Honours and Humanities Scholars programs at the University
of Victoria. She researches early modern drama and her Jamie Cassels Undergraduate
Research Award project focused on approaches to encoding early modern stage directions.
Martin Holmes
Martin Holmes has worked as a developer in the
UVicʼs Humanities Computing and Media Centre for
over two decades, and has been involved with dozens
of Digital Humanities projects. He has served on
the TEI Technical Council and as Managing Editor of
the Journal of the TEI. He took over from Joey Takeda as
lead developer on LEMDO in 2020. He is a collaborator on
the SSHRC Partnership Grant led by Janelle Jenstad.
Navarra Houldin
Project manager 2022–present. Textual remediator 2021–present. Navarra Houldin (they/them)
completed their BA in History and Spanish at the University of Victoria in 2022. During
their degree, they worked as a teaching assistant with the University of Victoriaʼs
Department of Hispanic and Italian Studies. Their primary research was on gender and
sexuality in early modern Europe and Latin America.
Nicole Vatcher
Technical Documentation Writer, 2020–2022. Nicole Vatcher completed her BA (Hons.)
in English at the University of Victoria in 2021. Her primary research focus was womenʼs
writing in the modernist period.
Rylyn Christensen
Rylyn Christensen is an English major at the University of Victoria.
Tracey El Hajj
Junior Programmer 2019–2020. Research Associate 2020–2021. Tracey received her PhD
from the Department of English at the University of Victoria in the field of Science
and Technology Studies. Her research focuses on the algorhythmics of networked communications. She was a 2019–2020 President’s Fellow in Research-Enriched
Teaching at UVic, where she taught an advanced course on
Artificial Intelligence and Everyday Life.Tracey was also a member of the Map of Early Modern London team, between 2018 and 2021. Between 2020 and 2021, she was a fellow in residence at the Praxis Studio for Comparative Media Studies, where she investigated the relationships between artificial intelligence, creativity, health, and justice. As of July 2021, Tracey has moved into the alt-ac world for a term position, while also teaching in the English Department at the University of Victoria.
Orgography
LEMDO Team (LEMD1)
The LEMDO Team is based at the University of Victoria and normally comprises the project
director, the lead developer, project manager, junior developers(s), remediators,
encoders, and remediating editors.
Glossary
Subversion
“An open-source version control system that allows us to keep, track, and restore
every version of every file in the repository.”
Terminal or command line
“The program on your computer that allows you to navigate through your directories
and make changes to the files therein.”
Metadata
Authority title | Work in the Command Line (Terminal) |
Type of text | Documentation |
Short title | |
Publisher | University of Victoria on the Linked Early Modern Drama Online Platform |
Series | Linked Early Modern Drama Online |
Source |
TEI Customization created by Martin Holmes, Joey Takeda, and Janelle Jenstad; documentation written by members of the LEMDO Team
|
Editorial declaration | n/a |
Edition | Released with Linked Early Modern Drama Online 1.0 |
Encoding description | Encoded in TEI P5 according to the LEMDO Customization and Encoding Guidelines |
Document status | prgGenerated |
Funder(s) | Social Sciences and Humanities Research Council of Canada |
License/availability | This file is licensed under a CC BY-NC_ND 4.0 license, which means that it is freely downloadable without permission under the following conditions: (1) credit must be given to the author and LEMDO in any subsequent use of the files and/or data; (2) the content cannot be adapted or repurposed (except in quotations for the purposes of academic review and citation); and (3) commercial uses are not permitted without the knowledge and consent of the editor and LEMDO. This license allows for pedagogical use of the documentation in the classroom. |