Skip to content
Snippets Groups Projects
Commit 6c4950ba authored by Ferger, Anne's avatar Ferger, Anne :bat:
Browse files

initial commit of LAMA 3.0

parents
No related branches found
No related tags found
No related merge requests found
#!/bin/bash
today=$(date)
timestamp=$(date +%Y%m%d%H%M%S)
remote="origin" #please set to the name of your remote repository
branch="main" #please set to the name of the branch you want to pull from and push to
conflictPath="${timestamp}-conflict.txt"
SCRIPT=`realpath $0`
directory=`dirname $SCRIPT`
corpusServicesJar="../corpus-services-1.0.jar" #please set to the location of the corpus-services jar
user=`git config user.name`
user="${user%\"}"
user="${user#\"}"
#messages in the script
conflictecho="ATTENTION: The local repository cannot be updated because of a conflict. The merge process will be aborted and a mattermost message will be sent to the git maintainers."
pullsuccessful="Updating of your files was successful, thank you for your time."
localchanges="ATTENTION: There are local changes on the files. Please remove them or save them with LAMA before updating."
nolocalchanges="There are no changes in your local files."
#this could happen if there would be large binary files without git lfs for example
pullerror="ATTENTION: The pull operation was faulty. Please fix it in ${directory} by ${user}."
version="3.0" #version of LAMA
echo "
.____ _____ _____ _____
| | / _ \ / \ / _ \
| | / /_\ \ / \ / \ / /_\ \
| |___/ | \/ Y \/ | \
|
|_______ \____|__ /\____|__ /\____|__ /
\/ \/ \/ \/
Welcome to Git with LAMA
"
echo " "
echo "############### Configuration ###############"
echo "LAMA version: ${version}"
echo "Git version:"
git --version
if [ "$(git ls-remote 2> /dev/null)" ]; then
echo "Git repository is accessible"
else
echo "ERROR: Git repository is not accessible"
fi
echo "#############################################"
echo " "
options=("See the current state of your local repository." "Update your local repository." "Save all your changes, add a message, publish your changes to the main repository and update your local repository." "Viewing your current configuration." "Setting up your configuration." "Help!" "Quit")
PS3="
Please choose an option (1-${#options[@]}) or press ENTER to display menu: "
select opt in "${options[@]}"
do
case $opt in
"Viewing your current configuration.")
echo "Your username is:"
git config user.name
echo "Your email is:"
git config user.email
;;
"Setting up your configuration.")
read -p "Enter your user name: " usrname
git config --global user.name "\"$usrname\""
read -p "Enter your email: " usrmail
git config --global user.email "\"$usrmail\""
echo "Thank you for setting your user name to"
git config user.name
echo "and your user email to"
git config user.email
;;
"See the current state of your local repository.")
git status
;;
#uncomment here and add option "See the changes in the files of your local repository." to options if you want to display changes via git diff
#"See the changes in the files of your local repository.")
# if [[ $(git diff) ]]; then
# echo "To close the following list of differences press 'q'"
# git diff
# else
# echo $nolocalchanges
# fi
# read -n 1 -s -r -p "Press any key to continue"
# ;;
"Update your local repository.")
CONFLICTS=$(git ls-files -u | wc -l)
if [ "$CONFLICTS" -gt 0 ]
then
echo $conflictecho
#this is important so people can work further on the files and the conflict can be solved later
git merge --abort
git status >> $conflictPath
echo $conflictmessage >> $conflictPath
read
exit 1
else
if [ -z "$(git status --porcelain)" ]
then
echo $nolocalchanges
echo "Updating will be started."
git fetch
git merge ${remote}/${branch}
CONFLICTS=$(git ls-files -u | wc -l)
if [ "$CONFLICTS" -gt 0 ]
then
echo $conflictecho
#this is important so people can work further on the files and the conflict can be solved later
git merge --abort
git status >> $conflictPath
echo $conflictmessage >> $conflictPath
read
exit 1
else
echo "Updating will be carried out."
fi
if [ -z "$(git status --porcelain)" ]
then
echo $pullsuccessful
else
git status
echo $pullerror
git status >> $conflictPath
echo $pullerror >> $conflictPath
read
fi
else
git status
echo $localchanges
read
fi
fi
;;
"Save all your changes, add a message, publish your changes to the main repository and update your local repository.")
CONFLICTS=$(git ls-files -u | wc -l)
if [ "$CONFLICTS" -gt 0 ]
then
echo $conflictecho
#this is important so people can work further on the files and the conflict can be solved later
git merge --abort
git status >> $conflictPath
echo $conflictmessage >> $conflictPath
read
exit 1
else
echo "Great, there is no merge conflict to begin with."
#show all the files that are changed and ask if they should be added
echo "The files that are changed by you are:"
git status
read -p "Do you want to add these changes to the main repository? (y/n)" yn
case $yn in
[Yy]* )
while true; do
read -p "Enter your commit message: " message
echo "Your commit message is: $message"
read -p "Is the message correct? (y/n)" yn2
case $yn2 in
[YyJj]* ) break;;
[Nn]* ) echo "Please enter the message again";;
* ) echo "Please answer yes or no.";;
esac
done
git add -A
git commit -m "$message"
git fetch
git merge ${remote}/${branch}
CONFLICTS=$(git ls-files -u | wc -l)
if [ "$CONFLICTS" -gt 0 ]
then
echo $conflictecho
git merge --abort
echo $conflictmessage >> $conflictPath
echo "The merge process was stopped and LAMA will be closed."
read
exit
else
echo "Merging was successful or not needed."
git push $remote $branch
fi
if [ -z "$(git status --porcelain)" ]
then
echo $pullsuccessful
read
else
git status
echo "ATTENTION: The pull was faulty. Please fix it. "
git status >> $conflictPath
echo $pullerror >> $conflictPath
read
fi
;;
[Nn]* ) echo "The process was stopped.";;
* ) echo "Please answer yes or no.";;
esac
fi
;;
"Help!")
clear
echo "This script can be used to add changes you made to the main Git repository so everyone working with the data can receive them."
echo "Please press ENTER to display the menu and type the number of the option you want to use, confirm wit the ENTER key."
echo "If there is a conflict or something goes wrong, please contact the maintaining team."
echo " "
echo "LAMA version: ${version}"
echo "Git version:"
git --version
if [ "$(git ls-remote 2> /dev/null)" ]; then
echo "Git repository is accessible"
else
echo "ERROR: Git repository is not accessible"
fi
;;
"Quit")
clear
break
;;
*) echo "ATTENTION: The option $REPLY is not available";;
esac
done
#!/bin/bash
today=$(date)
timestamp=$(date +%Y%m%d%H%M%S)
remote="origin" #please set to the name of your remote repository
branch="main" #please set to the name of the branch you want to pull from and push to
conflictPath="${timestamp}-conflict.txt"
SCRIPT=`realpath $0`
directory=`dirname $SCRIPT`
corpusServicesJar="../corpus-services-1.0.jar" #please set to the location of the corpus-services jar
user=`git config user.name`
user="${user%\"}"
user="${user#\"}"
#messages in the script
conflictecho="ATTENTION: The local repository cannot be updated because of a conflict. The merge process will be aborted and a mattermost message will be sent to the git maintainers."
pullsuccessful="Updating of your files was successful, thank you for your time."
jarnotfound="The JAR file is not available in ${directory} by ${user}."
localchanges="ATTENTION: There are local changes on the files. Please remove them or save them with LAMA before updating."
nolocalchanges="There are no changes in your local files."
#messages for mattermost or in the conflict text files
conflictmessage="ATTENTION: Please resolve a merge conflict manually in ${directory} by ${user}."
#this could happen if there would be large binary files without git lfs for example
pullerror="ATTENTION: The pull operation was faulty. Please fix it in ${directory} by ${user}."
#mattermost hook urls
mattermosturl="https://your.mattermost.server.com/mattermost/hooks/HOOKSHA"
#or for multiple repositories and respective Mattermost channels
#if [[ "$(git config --get remote.origin.url)" == reponame.git ]]; then
# mattermosturl="https://your.mattermost.server.com/mattermost/hooks/HOOKSHA"
#elif [[ "$(git config --get remote.origin.url)" == otherreponame.git ]]; then
# mattermosturl="https://your.mattermost.server.com/mattermost/hooks/HOOKSHA"
#else
# mattermosturl="https://your.mattermost.server.com/mattermost/hooks/HOOKSHA"
#fi
version="3.0" #version of LAMA
echo "
.____ _____ _____ _____
| | / _ \ / \ / _ \
| | / /_\ \ / \ / \ / /_\ \
| |___/ | \/ Y \/ | \
|
|_______ \____|__ /\____|__ /\____|__ /
\/ \/ \/ \/
Welcome to Git with LAMA
"
echo " "
echo "############### Configuration ###############"
echo "LAMA version: ${version}"
echo "Git version:"
git --version
echo "Java version:"
java -version
echo "corpus-services version: " $corpusServicesJar
if [ -f "$corpusServicesJar" ]; then
echo "$corpusServicesJar exists"
else
echo "ERROR: $corpusServicesJar does not exist"
#curl -i -X POST --data-urlencode "payload={\"text\": \"${jarnotfound}\"}" ${mattermosturl}
fi
if [ "$(git ls-remote 2> /dev/null)" ]; then
echo "Git repository is accessible"
else
echo "ERROR: Git repository is not accessible"
fi
echo "#############################################"
echo " "
options=("See the current state of your local repository." "Update your local repository." "Save all your changes, add a message, publish your changes to the main repository and update your local repository." "Viewing your current configuration." "Setting up your configuration." "Help!" "Quit")
PS3="
Please choose an option (1-${#options[@]}) or press ENTER to display menu: "
select opt in "${options[@]}"
do
case $opt in
"Viewing your current configuration.")
echo "Your username is:"
git config user.name
echo "Your email is:"
git config user.email
;;
"Setting up your configuration.")
read -p "Enter your user name: " usrname
git config --global user.name "\"$usrname\""
read -p "Enter your email: " usrmail
git config --global user.email "\"$usrmail\""
echo "Thank you for setting your user name to"
git config user.name
echo "and your user email to"
git config user.email
;;
"See the current state of your local repository.")
git status
;;
#uncomment here and add option "See the changes in the files of your local repository." to options if you want to display changes via git diff
#"See the changes in the files of your local repository.")
# if [[ $(git diff) ]]; then
# echo "To close the following list of differences press 'q'"
# git diff
# else
# echo $nolocalchanges
# fi
# read -n 1 -s -r -p "Press any key to continue"
# ;;
"Update your local repository.")
CONFLICTS=$(git ls-files -u | wc -l)
if [ "$CONFLICTS" -gt 0 ]
then
echo $conflictecho
#this is important so people can work further on the files and the conflict can be solved later
git merge --abort
git status >> $conflictPath
echo $conflictmessage >> $conflictPath
curl -i -X POST --data-urlencode "payload={\"text\": \"${conflictmessage}\"}" ${mattermosturl}
read
exit 1
else
if [ -z "$(git status --porcelain)" ]
then
echo $nolocalchanges
echo "Updating will be started."
git fetch
git merge ${remote}/${branch}
CONFLICTS=$(git ls-files -u | wc -l)
if [ "$CONFLICTS" -gt 0 ]
then
echo $conflictecho
#this is important so people can work further on the files and the conflict can be solved later
git merge --abort
git status >> $conflictPath
echo $conflictmessage >> $conflictPath
curl -i -X POST --data-urlencode "payload={\"text\": \"${conflictmessage}\"}" ${mattermosturl}
read
exit 1
else
echo "Updating will be carried out."
fi
if [ -z "$(git status --porcelain)" ]
then
echo $pullsuccessful
else
git status
echo $pullerror
git status >> $conflictPath
echo $pullerror >> $conflictPath
curl -i -X POST --data-urlencode "payload={\"text\": \"${$pullerror}\"}" ${mattermosturl}
read
fi
else
git status
echo $localchanges
read
fi
fi
;;
"Save all your changes, add a message, publish your changes to the main repository and update your local repository.")
CONFLICTS=$(git ls-files -u | wc -l)
if [ "$CONFLICTS" -gt 0 ]
then
echo $conflictecho
#this is important so people can work further on the files and the conflict can be solved later
git merge --abort
git status >> $conflictPath
echo $conflictmessage >> $conflictPath
curl -i -X POST --data-urlencode "payload={\"text\": \"${conflictmessage}\"}" ${mattermosturl}
read
exit 1
else
echo "Great, there is no merge conflict to begin with."
#show all the files that are changed and ask if they should be added
echo "The files that are changed by you are:"
git status
read -p "Do you want to add these changes to the main repository? (y/n)" yn
case $yn in
[Yy]* )
while true; do
read -p "Enter your commit message: " message
echo "Your commit message is: $message"
read -p "Is the message correct? (y/n)" yn2
case $yn2 in
[YyJj]* ) break;;
[Nn]* ) echo "Please enter the message again";;
* ) echo "Please answer yes or no.";;
esac
done
git add -A
git commit -m "$message"
java -Xmx3g -jar $corpusServicesJar -i $directory -o $directory/prettyprint-output.html -c RemoveAutoSaveExb -c PrettyPrintData -f
git add -A
git reset -- curation/CorpusServices_Errors.xml
git checkout curation/CorpusServices_Errors.xml
git commit -m "Automatically pretty printed on $today"
git fetch
git merge ${remote}/${branch}
CONFLICTS=$(git ls-files -u | wc -l)
if [ "$CONFLICTS" -gt 0 ]
then
echo $conflictecho
git merge --abort
echo $conflictmessage >> $conflictPath
curl -i -X POST --data-urlencode "payload={\"text\": \"${conflictmessage}\"}" ${mattermosturl}
echo "The merge process was stopped and LAMA will be closed."
read
exit
else
echo "Merging was successful or not needed."
git push $remote $branch
fi
if [ -z "$(git status --porcelain)" ]
then
echo $pullsuccessful
read
else
git status
echo "ATTENTION: The pull was faulty. Please fix it. "
git status >> $conflictPath
echo $pullerror >> $conflictPath
curl -i -X POST --data-urlencode "payload={\"text\": \"$pullerror\"}" ${mattermosturl}
read
fi
;;
[Nn]* ) echo "The process was stopped.";;
* ) echo "Please answer yes or no.";;
esac
fi
;;
# Uncomment this section and add the option "Writing new segmented transcriptions and normalizing." to options if you want to have an option to normalize and segment files with corpus services
# "Writing new segmented transcriptions and normalizing.")
# CONFLICTS=$(git ls-files -u | wc -l)
# if [ "$CONFLICTS" -gt 0 ]
# then
# echo "The local GIT repository cannot be normalized because of a GIT conflict."
# git status >> $conflictPath
# echo $conflictmessage >> $conflictPath
# curl -i -X POST --data-urlencode "payload={\"text\": \"${conflictmessage}\"}" ${mattermosturl}
# read
# exit 1
# else
# if [ -z "$(git status --porcelain)" ]
# then
# echo "There are no local changes, updating will be started."
# git fetch
# git merge ${remote}/${branch}
# CONFLICTS=$(git ls-files -u | wc -l)
# if [ "$CONFLICTS" -gt 0 ]
# then
# echo "There is a merge conflict. Aborting"
# git merge --abort
# git status >> $conflictPath
# echo $conflictmessage >> $conflictPath
# curl -i -X POST --data-urlencode "payload={\"text\": \"${conflictmessage}\"}" ${mattermosturl}
# read
# else
# echo "There are no merge conflicts, normalizing will be carried out."
# fi
# if [ -z "$(git status --porcelain)" ]
# then
# echo "Pull was successful."
# # now normalize and commit and push the changes
# java -Xmx3g -jar $corpusServicesJar -i $directory -o $directory/curation/normalize-report-output.html -s corpus-utilities/settings.param -c RemoveAbsolutePaths -c RemoveAutoSaveExb -c ComaApostropheChecker -c ExbSegmentationChecker -c ComaSegmentCountChecker -c RemoveEmptyEvents -c ComaTranscriptionsNameChecker -c ExbSegmentationChecker -c RemoveAbsolutePaths -c RemoveAutoSaveExb -c ComaApostropheChecker -c PrettyPrintData -f
# git add -A
# git reset -- curation/CorpusServices_Errors.xml
# git checkout curation/CorpusServices_Errors.xml
# git commit -m "Automatically normalized printed on $today"
# git fetch
# git merge ${remote}/${branch}
# CONFLICTS=$(git ls-files -u | wc -l)
# if [ "$CONFLICTS" -gt 0 ]
# then
# echo "There is a merge conflict. Aborting"
# git merge --abort
# echo $conflictmessage >> $conflictPath
# curl -i -X POST --data-urlencode "payload={\"text\": \"${conflictmessage}\"}" ${mattermosturl}
# echo "The process was stopped and GIT Helper will be closed."
# read
# exit
# else
# echo "Merging was successful or not needed."
# git push $remote $branch
# fi
# if [ -z "$(git status --porcelain)" ]
# then
# echo "Pull was successful."
# read
# else
# git status
# echo "The pull was faulty. Please fix it. "
# git status >> $conflictPath
# echo $pullerror >> $conflictPath
# curl -i -X POST --data-urlencode "payload={\"text\": \"$pullerror\"}" ${mattermosturl}
# read
# fi
# else
# git status
# echo $pullerror
# git status >> $conflictPath
# echo $pullerror >> $conflictPath
# curl -i -X POST --data-urlencode "payload={\"text\": \"${$pullerror}\"}" ${mattermosturl}
# read
# fi
# else
# git status
# echo $localchanges
# read
# fi
#
# fi
# ;;
"Help!")
clear
echo "This script can be used to add changes you made to the main Git repository so everyone working with the data can receive them."
echo "Please press ENTER to display the menu and type the number of the option you want to use, confirm wit the ENTER key."
echo "If there is a conflict or something goes wrong, please contact the maintaining team."
echo " "
echo "LAMA version: ${version}"
echo "Git version:"
git --version
echo "Java version:"
java -version
echo "corpus-services version: " $corpusServicesJar
if [ -f "$corpusServicesJar" ]; then
echo "$corpusServicesJar exists"
else
echo "ERROR: $corpusServicesJar does not exist"
curl -i -X POST --data-urlencode "payload={\"text\": \"${jarnotfound}\"}" ${mattermosturl}
fi
if [ "$(git ls-remote 2> /dev/null)" ]; then
echo "Git repository is accessible"
else
echo "ERROR: Git repository is not accessible"
fi
;;
"Quit")
clear
break
;;
*) echo "ATTENTION: The option $REPLY is not available";;
esac
done
LICENSE 0 → 100644
MIT License
Copyright (c) 2020 Corpus Services
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.
README.md 0 → 100644
<!-- PROJECT SHIELDS -->
<!--
*** I'm using markdown "reference style" links for readability.
*** Reference links are enclosed in brackets [ ] instead of parentheses ( ).
*** See the bottom of this document for the declaration of the reference variables
*** for contributors-url, forks-url, etc. This is an optional, concise syntax you may use.
*** https://www.markdownguide.org/basic-syntax/#reference-style-links
-->
[Contributors][contributors-url]
·
[Forks][forks-url]
·
[Issues][issues-url]
·
[License][license-url]
<!-- PROJECT LOGO -->
<br />
<p align="center">
<a href="https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/raw/main/images/logo.png">
<img src="https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/raw/main/images/logo.png" alt="Logo" width="300" height="125">
</a>
<h3 align="center">LAMA - your friendly and easy git script</h3>
<p align="center">
LAMA (= Linguistic Automation Management Assistent) was created in the project [INEL](https://inel.corpora.uni-hamburg.de) to simplify and error-proof using [git](git-scm.com)
for linguists/non-tech collaborators.
<br />
<a href="https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/tree/develop/doc"><strong>Explore the docs »</strong></a>
<br />
<br />
<a href="https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/issues">Report Bug</a>
·
<a href="https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/issues">Request Feature</a>
</p>
</p>
<!-- TABLE OF CONTENTS -->
## Table of Contents
* [About the Project](#about-the-project)
* [Getting Started](#getting-started)
* [Using lama](#usage)
* [Roadmap](#roadmap)
* [Contributing](#contributing)
* [License](#license)
* [Authors](#authors)
* [Contact](#contact)
* [Acknowledgements](#acknowledgements)
<!-- ABOUT THE PROJECT -->
## About The Project
LAMA (= Linguistic Automation Management Assistent) was created in the project [INEL](https://inel.corpora.uni-hamburg.de) to simplify and error-proof using [git](git-scm.com)
for linguists/non-tech people.
While it is a very basic shell script, it was created after lots of experience of teaching non-tech people git with available GUIs as well as spending time fixing problems because of that.
The script is intended for people that do not want to learn specific git commands while still being able to collaborate with other git users on projects, especially in a setup where there are technical git maintainers and other collaborators.
Please note that with this script it is assumed that the git repository was already cloned and setup properly before. If git lfs was also set up correctly the script works correctly with lfs as well.
<!-- USAGE EXAMPLES -->
# Using LAMA
Working with LAMA consists of some steps that need to be carried out in a specific order:
## Viewing your current configuration (4)
Before starting to work, first make sure your username and email in LAMA is correct.
You can use the following option to do so:
*@ 4) Viewing your current configuration@*
The username should be your *@Firstname Lastname@* and the email should be your email address *@example@example.com@*.
You can change it using
*@5) Setting up your configuration@*
## Update your local repository (2)
Before starting to work on the files, you need to make sure to work on the most recent version
of the files. You can update your copy of the files using this option:
*@2) Update your local repository@*
This checks that there are no changes to begin with and then updates your files. If there are changes
it does not change the files. If you want to see which changes there are you can use:
*@1) See the current state of your local repository@*.
## Work on the files
Now you can start to work on the files and make changes.
## Save all your changes, add a message, publish your changes to the main repository and update your local repository (3)
When on step of the work is done, you can save your progress and make it available for the
other people working on it. You can do this with
*@3) Save all your changes, add a message, publish your changes to the main repository and update your local repository@*
This steps additionally updates you local repository with the changes other people may have done at the same time.
If someone else worked on the files while you made changes, the script can show the following lines:
<img src="https://sarafordnet.files.wordpress.com/2017/02/image82.png" alt="Image" width="700" >
If you see these lines, the correct commit message is already written there automatically. To confirm the message and continue with the script, press *ESC, then enter the letters :wq and press ENTER*.
If you're not able to enter the letters :wq after you pressed ESC, press the letter i instead and write :wq and press ENTER.
(If two people worked on the same part of the same file at once it can rarely lead to a Git conflict. If that happens, you will get a message in LAMA and a file timestamp-git-conflict.txt
will be written in your folder. This kind of conflict needs to be solved by the technical team, so write a message if it happens to you.
But your data will still be save and it does not take long to solve this.)
## Work further on the files and Save all your changes, add a message, publish your changes to the main Git repository and update your local Git repository afterwards
Now you can work on the files again and save and publish your changes afterwards. Remember to start with the first step again if you make a pause.
To run LAMA, double click on the LAMA-*.sh file located in the folder you want to work on.
The menu looks like this:
<pre>
Welcome to Git with LAMA
1) See the current state of your local repository.
2) Update your local repository.
3) Save all your changes, add a message, publish your changes to the main repository and update your local repository.
4) Viewing your current configuration.
5) Setting up your configuration.
6) Help!
7) Quit
Please choose an option (1-7) or press ENTER to display menu:
</pre>
# Additional versions of LAMA
## LAMA in German
There is a version of the LAMA script available in German [here](https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/tree/main/LAMA-German). It contains the Mattermost and corpus-services integration, but you could comment out the respective parts to use the basic version in German. There is also a German documentation of using LAMA [here](https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/tree/main/LAMA-German/LAMA _de.md).
## LAMA with Mattermost Messages
There is a more complex version of LAMA which sends messaged to Mattermost if a respective hook is provided available [here](https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/tree/main/LAMA-Mattermost). Replace the variable mattermosturl="https://your.mattermost.server.com/mattermost/hooks/HOOKSHA" with you Mattermost Webhook URL. Find out more about how to create Mattermost Webhooks [here](https://docs.mattermost.com/developer/webhooks-incoming.html).
## LAMA with corpus services
The most complex version of LAMA contains integration of the [corpus services](https://gitlab.rrz.uni-hamburg.de/corpus-services/corpus-services) tool using its jar. It is used when working with [EXMARaLDA](https://exmaralda.org/en/) corpora and git for pretty printing and normalizing of the transcription files. It also contains the Mattermost integration. See [here](https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/tree/main/LAMA-corpus-services).
<!-- LIBRARIES -->
## To be used with
[git](http://git-scm.com/)
optionally:
[Mattermost](https://mattermost.com/)
[corpus services](https://gitlab.rrz.uni-hamburg.de/corpus-services/corpus-services)
<!-- ROADMAP -->
## Roadmap
See the [open issues](https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/issues) for a list of proposed features (and known issues).
<!-- CONTRIBUTING -->
## Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions are **greatly appreciated**.
1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
<!-- LICENSE -->
## License
Distributed under MIT License. See `LICENSE` for more information.
<!-- AUTHORS -->
## Authors
Anne Ferger
Daniel Jettka
<!-- CONTACT -->
## Contact
Anne Ferger - [@anneferger1](https://twitter.com/anneferger1) - anne.ferger@mail.de
Project Link: [LAMA](https://gitlab.rrz.uni-hamburg.de/corpus-services/lama)
<!-- ACKNOWLEDGEMENTS -->
## Acknowledgements
Contributions to the project have been made by staff from [INEL](https://inel.corpora.uni-hamburg.de).
<sub>Parts of this project have been produced in the context of the joint research funding of the German Federal Government and Federal States in the Academies’ Programme, with funding from the Federal Ministry of Education and Research and the Free and Hanseatic City of Hamburg. The Academies’ Programme is coordinated by the Union of the German Academies of Sciences and Humanities.</sub>
This README file was created on the basis of the [Best-README-Template](https://github.com/othneildrew/Best-README-Template/blob/master/README.md).
Logo created at LogoMakr.com.
<!-- MARKDOWN LINKS & IMAGES -->
<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
[contributors-shield]: https://img.shields.io/github/contributors/othneildrew/Best-README-Template.svg?style=flat-square
[contributors-url]: https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/graphs/main
[forks-url]: https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/forks
[issues-url]: https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/issues
[license-url]: https://gitlab.rrz.uni-hamburg.de/corpus-services/lama/-/blob/main/LICENSE
logo/logo.png

6.2 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment