리브레오피스(LibreOffice)는 다양한 플랫폼에서 사용할 수 있는 오피스 제품군으로 마이크로소프트 오피스를 비롯한 주요 오피스 제품군과 호환된다. 2010년 11월, 오픈오피스의 후원 기업인 오라클의 배타적이고 소극적인 지원과 일방적인 정책 설정에 반발한 다수의 개발자가 오라클과 결별하고 도큐먼트 재단을 설립하였고 이후 오픈오피스 3.3.0에서 갈라져 리브레 오피스를 개발하기 시작했다.
노벨과 구글 등에서 새로운 재단의 설립과 리브레 오피스 개발에 대해 환영의 뜻을 보였으며, 우분투의 개발사인 캐노니컬에서는 개발팀을 지원하고 있다.[1]우분투를 비롯한 많은 리눅스 배포판이 2011년 상반기를 기점으로 오픈오피스가 아닌 리브레 오피스를 기본 오피스 소프트웨어로 포함하고 있다.
이 제품군은 라이터(Writer), 캘크(Calc), 임프레스(Impress), 드로(Draw), 베이스(Base), 매스(Math)로 이루어져 있다.
명칭
리브레(Libre)는 라틴어에서 유래되어 로망스어군에서 흔히 쓰이는 자유(free)를 뜻하는 어간이고, 오피스(office)는 영어 단어이다. 특정한 기업으로부터 자유로운 자유 소프트웨어라는 의미를 담아 지어졌다. 공식 홈페이지의 브랜딩 가이드(위키)에서는 이를 발음한 목소리를 파일로 제공하고 있다.[2][3] 브랜딩으로 사용하는 발음은 '리버'에 가깝지만, 대한민국에서는 라틴어식으로 읽어서 '리브레'라는 명칭이 주류로 굳어졌다. 약칭으로는 흔히 LibO가 쓰인다.[2]
리브레오피스 베이직(Libre Office Basic)은 스타오피스 베이직 및 오픈오피스의 계열로 베이직과 유사한 프로그래밍 언어이다. 응용 프로그램용 매크로(Macros) 및 이를 사용하는 프로그램 기능을 위해 리브레오피스에 내장되었으며 이를 위해 작동한다. 마이크로소프트 비주얼 베이직(VBA)과의 호환을 일부 지원한다.[6][7] 한편 리브레오피스 베이직은 자바(Java) JRE환경에서 작동하며 OpenJDK도 지원한다.
리브레오피스 베이직은 라이터(Writer)와 칼크(Calc) 응용 프로그램에서 쓸 수 있다. 이는 서브루틴이나 매크로를 부르는 함수로 쓰이며, 각 매크로는 한 문단에서 단어 수를 세는 것과 같은 서로 다른 일을 수행한다. 리브레오피스 베이직은 특히 자체 프로그램 안에 내장되지 않은 함수 구현 및 반복 작업을 하는 데 유용하다.
또한 리브레오피스 데이터베이스 프로그램인 베이스(Base)는 라이터를 이용해 리포트와 폼을 만들기 때문에, 베이스 또한 리브레오피스 베이직으로 프로그램될 수 있다고 말할 수 있다.
리브레오피스 베이직의 프로그래밍작업은 같이 제공되는 베이직 에디터(The Basic Editor)를 통해서 이루어진다.
베이직 에디터(The Basic Editor)를 이용한 일괄 패치 매크로 소스 예
다음은 라이터(Text Document)에서 다수의 매쓰(Fomula)오브젝트들을 삽입한 후 "글자 크기, 폰트, 가운데 정렬"을 위한 일괄 패치 매크로 소스이다.[8]
REM ***** BASIC *****SubMainembeddedObjects=ThisComponent.getEmbeddedObjects()elementNames=embeddedObjects.getElementNames()fori=0toUBOUND(elementNames)element=embeddedObjects.getByName(elementNames(i)).Modelif(element.supportsService("com.sun.star.formula.FormulaProperties"))thenelement.BaseFontHeight=11element.FontNameVariables="Noto Serif CJK KR,Italic"element.FontNameFunctions="나눔명조"element.FontNameNumbers="Noto Serif CJK KR"element.Alignment=com.sun.star.style.TabAlign.CENTERendifnextiThisComponent.reformat()EndSub
워드프로세서
텍스트 도큐먼트(text documents) 또는 워드 프로세서인 리브레오피스 라이터(Writer)는 각주(foot note)와 미주(end note) 삽입(Insert) 기능에서 스위칭 바로가기 기능을 기본으로 지원함으로써 빠른 논문 작성 및 관리를 지원한다. 한편 리브레 도움말에서는 각주는 페이지 끝에 오는 주석(reference)을 그리고 미주는 문서 끝에 오는 주석(reference)이라고 설명하고 있다.[9] 한편 리브레오피스는 삽입 기능에서 오브젝트 뿐만 아니라 이미지로 불러올 수 있는 다양한 그래픽 파일 형식에는 pdf파일도 포함된다. 따라서 여러 pdf파일의 일련 편집으로 워드 형식의 파일 출력 작업이 가능하다.[10]